zoukankan      html  css  js  c++  java
  • AIX安装Oracle 11g客户端、Pro*C/C++编译环境

    AIX安装Oracle 11g客户端、Pro*C/C++编译环境

    1. 安装准备:
    2.   首先需要确定AIX版本是否满足Oracle 11g客户端安装的最低要求,可查看Oracle官网相关文档(http://download.oracle.com/docs/cd/B28359_01/install.111/b32334/toc.htm#CHDFFBIF),处说明了Oracle 11g Release 1客户端对操作系统的最低要求为:

      AIX 5L version 5.3, TL 05, Service Pack 06
      AIX 6L version 6.1, TL 00, Service Pack 04 or later
      

        文档(http://download.oracle.com/docs/cd/E11882_01/install.112/e18192/toc.htm#CIHFICFD)处说明了Oracle 11g Release 2客户端对操作系统的最低要求为:

      AIX 5L V5.3 TL 09 SP1 ("5300-09-01"), 64 bit kernel
      AIX 6.1 TL 02 SP1 ("6100-02-01), 64-bit kernel
      AIX 7.1 TL 0 SP1 ("7100-00-01"), 64-bit kernel
      

        AIX上可以使用oslevel或oslevel -s查看 AIX具体版本信息。如果已确认了操作系统版本,但报aio(异步IO)相关错误可参考网上另一篇文章处理,请大家自己google之。公司服务器AIX版本为5300-06-01-0000,故只能安装release 1的客户端此处以安装Oracle 11g release 1 64位客户端为例。

        首先需要从http://www.oracle.com/technetwork/topics/aix5lsoft-098883.html 下载

      basic-11.1.0.7.0-aix-ppc64.zip
      sdk-11.1.0.7.0-aix-ppc64.zip
      sqlplus-11.1.0.7.0-aix-ppc64.zip
      tools-11.1.0.7.0-aix-ppc64.zip
      precomp-11.1.0.7.0-aix-ppc64.zip
      

        AIX不自带unzip等程序,可在 windows机器上全部解压,解压后生成文件夹instantclient_11_1。

    3. 安装过程:
      1. 将解压出来的instantclient_11_1目录整个上传至AIX用户目录下。
      2. 添加ORACLE_HOME等环境变量。
      3. 在.profile中添加如下内容:

        export ORACLE_HOME=$HOME/instantclient_11_1
        export ORACLE_SID=orcl
        export LD_LIBRARY_PATH=$ORACLE_HOME:${LD_LIBRARY_PATH}
        export PATH=$ORACLE_HOME:$ORACLE_HOME/sdk:$PATH
        
      4. 建立TNS文件。
      5. mkdir -p $ORACLE_HOME/network/admin
        touch $ORACLE_HOME/ network/admin/tnsnames.ora
        编辑tnsnames.ora内容大致如下:
        orcl =
          (DESCRIPTION =
            (ADDRESS = (PROTOCOL = TCP)(HOST = 192.1.2.202)(PORT = 1521))
            (CONNECT_DATA =
              (SERVER = DEDICATED)
              (SERVICE_NAME = orcl)
            )
          )
        
      6. 测试
      7. sqlplus unionkms@orcl
        
        SQL*Plus: Release 11.1.0.7.0 - Production on Wed Feb 23 16:41:07 2011
        
        Copyright (c) 1982, 2008, Oracle.  All rights reserved.
        
        Enter password: 
        
        Connected to:
        Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
        With the Partitioning, OLAP and Data Mining options
        
        SQL> desc branch;
         Name                                      Null?    Type
         ----------------------------------------- -------- ----------------------------
         UNID                                      NOT NULL CHAR(40)
         UNBRANCHTYPEID                            NOT NULL CHAR(40)
         UNBRANCHFIELD                                      NUMBER(38)
         UNBRANCHID                                         CHAR(50)
         UNKMCID                                            CHAR(40)
         UNIDOFMNGSVR                                       CHAR(40)
         UNSECUSERVICESVRID                                 CHAR(40)
         UNMONITORSVRID                                     CHAR(40)
         UNMANAGER                                          CHAR(128)
         UNPHONE                                            CHAR(128)
         UNFAX                                              CHAR(128)
         UNEMAIL                                            CHAR(128)
         UNHTTPADDR                                         VARCHAR2(256)
         UNREMARK                                           CHAR(128)
         UNINPUTTELLER                                      CHAR(20)
         UNINPUTDATE                                        CHAR(8)
         UNINPUTTIME                                        CHAR(6)
         UNUPDATETELLER                                     CHAR(20)
         UNUPDATEDATE                                       CHAR(8)
         UNUPDATETIME                                       CHAR(6)
        SQL> 
        

          Pro*C文件pc_test中。

        pcscfg.cfg :

        sys_include=(/u2/chenlong/instantclient_11_1/sdk/include,/usr/include)
        ltype=short
        define=__64BIT__
        define=_IBM_C
        define=_LONG_LONG
        

        a1.pc :

        #include <stdio.h>
        #include <stdlib.h>
        #include <string.h>
        #include "sqlca.h"
        
        int main(void)
        {
        	EXEC SQL INCLUDE sqlca;
        	EXEC SQL BEGIN DECLARE SECTION;
        	char *user = "unionkms";
        	char *passwd = "unionkms";
        	char *db = "orcl";
        	EXEC SQL END DECLARE SECTION;
        	EXEC SQL CONNECT :user IDENTIFIED BY :passwd USING :db;
        	if (sqlca.sqlcode == 0)
        	printf("connect success!\n");
        	else
        	printf("connect fail!\n");
        	return 0;
        }
        

        makefile :

        all: a1.pc
        	proc config=pcscfg.cfg iname=a1.pc
        	cc -q64 -I /u2/chenlong/instantclient_11_1/sdk/include/ -c a1.c 
        	cc -q64 -L/u2/chenlong/instantclient_11_1/  -lclntsh -o a1 a1.o
        clean:
        	rm a1.lis a1.o
        

        (转载时请注明作者和出处。未经许可,请勿用于商业用途)
          更多文章请访问我的Blog: http://www.cnblogs.com/logicbaby
  • 相关阅读:
    被老板批评“公司离开谁都照转,谁的工作干不好谁走人”,你会立马辞职吗?
    开课啦 dubbo-go 微服务升级实战
    如何通过 Serverless 提高 Java 微服务治理效率?
    Alluxio 助力 Kubernetes,加速云端深度学习
    收藏!这些 IDE 使用技巧,你都知道吗
    基于 Wasm 和 ORAS 简化扩展服务网格功能
    基于 KubeVela 与 Kubernetes 打造“无限能力”的开放 PaaS
    Kubernetes 稳定性保障手册 -- 日志专题
    Kubernetes 稳定性保障手册 -- 极简版
    Serverless 如何在阿里巴巴实现规模化落地?
  • 原文地址:https://www.cnblogs.com/logicbaby/p/1964798.html
Copyright © 2011-2022 走看看