您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
免费发信息
三六零分类信息网 > 焦作分类信息网,免费分类信息发布

Oracle 11g Client的配置

2024/3/19 8:12:17发布17次查看
然后根据你的平台,选择不同的下载,我是安装在rhel5下,所以选择了linux x86 并下载了下面2个包:instantclient-basic-linux32-
首先从otn下载几个压缩包
下载地址为:
然后根据你的平台,选择不同的下载,我是安装在rhel5下,所以选择了linux x86 并下载了下面2个包:
instantclient-basic-linux32-11.1.0.7.zip  基本包,提供了oci,occi和jdbc-oci应用程序的支持。
instantclient-sdk-linux32-11.1.0.7.zip  附加的头文件和makefile文件,部分需要编译的模板需要,比如编译php的oci8,和python 的cx_oracle. (我们这里仅使用其提供的oci头文件)
instantclient-sqlplus-linux32-11.1.0.7.zip 可选安装,sqlplus..有时候测试,管理什么的很方便。              
1.建立oracle用户和组:
#groupadd oinstall
#useradd -g oinstall oracle
#passwd oracle
2.建立一个oracle 基本目录
#mkdir –p /usr/local/oracle
#chown –r oracle:oinstall /usr/local/oracle
#chmod –r 775 /usr/local/oracle
将上述tar.gz或zip包解压,,拷贝到 /usr/local/oracle目录中。
 3.设置 oracle_home和ld_library_path环境变量,配置tns_admin变量(放置 tnsname.ora的目录).如果使用sqlplus的话,也设置下path环境变量。修改oracle用户目录下的  .bash_profile加入下面语句.
export oracle_home=/usr/local/oracle
#export oracle_sid=hbdb
export sqlpath=/usr/local/oracle
#寻找tnsnames.ora路径
export tns_admin=/usr/local/oracle   
export nls_lang=''american_america.zhs16gbk''
export ld_library_path=$oracle_home:$ld_library_path
export path=$path:$oracle_home
4.tnsnames.ora配置:
mydb =
  (description =
    (address_list =
      (address = (protocol = tcp)(host = 10.0.0.5)(port = 1521))
    )
    (connect_data =
      (sid = hbdb)
      (server = dedicated)
    )
  )
5.sqlplus连接数据库:
sqlplus user/passwd@10.0.0.5/hbdb或sqlplus user/passwd@mydb
如果出现:sqlplus: error while loading shared libraries: /usr/local/oracle/libnnz11.so: cannot restore segment prot after reloc: permission denied
最简单的解决方法莫过于将selinux设置位permissive状态:
[root@localhost ~]# getenforce
enforcing
[root@localhost ~]# setenforce 0
[root@localhost ~]#  getenforce
permissive
[oracle@localhost ~]# sqlplus xfdb/xfdb@mydb
sql*plus: release 11.1.0.7.0 - production on wed jun 17 16:37:06 2009
copyright (c) 1982, 2008, oracle.  all rights reserved.
connected to:
oracle database 11g enterprise edition release 11.1.0.6.0 - 64bit production
with the partitioning, olap, data mining and real application testing options
sql> select sysdate from dual;
sysdate
------------
17-jun-09
sql>
6.测试eams项目数据库访问组件dboci(对oci的c++封装)
先建立一个libclntsh.so.11.1的链接:
[oracle@localhost oracle]# ln -s libclntsh.so.11.1  libclntsh.so
#include dboci.h
#include
int main(void)
{
    cdboci oci;
    int iret = oci.open(xfdb, xfdb, hbdb);
    if (iret         return 0;   //
    char*** result = null;
    int num = oci.query(select sysdate from dual, &result, 1);
    if (num > 0)
    {   
        for (int i=0; i         {
            std::cout         }
        oci.freeexecsqlbuf(&result, num, 1);
    }
    oci.close();
    return 1;
}
scons脚本:
env = environment()
env.append(ccflags='-g')
src_files = split('dbconnect.cpp ../dboci/source/dboci.cpp')
include = split('/usr/local/oracle/sdk/include ../dboci/include')
lib_path = split('/usr/local/oracle')
lib_files = split('clntsh nnz11')
env.program(target='dbconnect',source = src_files, libs=lib_files, libpath=lib_path,cpppath=include)
运行结果:
[root@localhost dbconnecttest]# ./dbconnect
17-jun-09
至此eams项目数据库存取的开发与部署测试通过!
顺带说明下oracle 11g即时客户端在windows下的配置
1.假设把压缩文件解压到d盘根目录;
2.编辑环境,将d:\instantclient_11_1添加到path中(注意位于其他oracle目录之前),增加系统环境变量tns_admin设置为d:\instantclient_11_1;oracle_home设置为d:\instantclient_11_1;nls_lang为''american_america.zhs16gbk''
例如,在windows 2000上,依次单击“开始”->“设置”->“控制面板”->“系统”->“高级”->“环境变量”,编辑系统变量列表中的path,系统环境变量tns_admin设置为d:\instantclient_11_1;系统环境变量oracle_home设置为d:\instantclient_11_1;系统环境变量nls_lang设置为american_america.zhs16gbk
3.编辑d:\instantclient_11_1\ tnsnames.ora文件:
mydb =
  (description =
    (address_list =
      (address = (protocol = tcp)(host = 10.0.0.5)(port = 1521))
    )
    (connect_data =
      (sid = hbdb)
      (server = dedicated)
    )
  )
其中:mydb:数据库的事例名
10.0.0.5数据库服务器地址
hbdb:数据库的sid;
焦作分类信息网,免费分类信息发布

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录