Oracle Linux x 86_64簡易クライアントインストール手順
67346 ワード
Oracle 11 gクライアントのLinuxシステム上の配置は少し難しいですが、ステップに沿って一歩ずつ配置すれば大丈夫です.本論文では、Oracle 11 gクライアントのLinuxシステム上の構成手順を紹介します.
まずOTNからいくつかの圧縮パッケージをダウンロードします.http://www.oracle.com/technology/software/tech/oci/instantclient/index.html そして、あなたのプラットフォームによって、異なるダウンロードを選択します.私はrhel 5にインストールされていますので、linux x 86を選択し、次の2つのバッグをダウンロードしました.
instantclient-baic-linux 32-1.1.0.70.zip 基本パッケージは、OCI、OCCI、JDB-OCIアプリケーションのサポートを提供します.
instantclient-sdk-linux 32-1.1.0.70.zip 添付のヘッダファイルとmakefileファイルは、部分的にコンパイルが必要なテンプレートが必要です.たとえば、phpのoci 8をコンパイルし、pythonのcx_.Oracle.(ここでは提供されたociヘッダファイルのみを使用します.)
instantclient-sqlplus-linux 32-1.1.07.zipはオプションでインストールして、sqlplus.テストがあります.管理などがとても便利です.
次に配置過程を紹介します.
1.oracleユーザーとグループを作成する:
3.ORACLE_を設定するHOMEとLD_リブラアルPATH環境変数は、TNS_を配置します.ADMIN変数
sqlplusを使うと、PATH環境変数も設定されます.oracleユーザディレクトリの変更 .bashprofileは次の文を追加します.
まずlibclnth.so.1.1のリンクを作成します.
Oracle 11 gクライアントプログラムのLinuxシステム上の配置についてここに紹介しました.何か収穫がありますように.
まずOTNからいくつかの圧縮パッケージをダウンロードします.http://www.oracle.com/technology/software/tech/oci/instantclient/index.html そして、あなたのプラットフォームによって、異なるダウンロードを選択します.私はrhel 5にインストールされていますので、linux x 86を選択し、次の2つのバッグをダウンロードしました.
instantclient-baic-linux 32-1.1.0.70.zip 基本パッケージは、OCI、OCCI、JDB-OCIアプリケーションのサポートを提供します.
instantclient-sdk-linux 32-1.1.0.70.zip 添付のヘッダファイルとmakefileファイルは、部分的にコンパイルが必要なテンプレートが必要です.たとえば、phpのoci 8をコンパイルし、pythonのcx_.Oracle.(ここでは提供されたociヘッダファイルのみを使用します.)
instantclient-sqlplus-linux 32-1.1.07.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_リブラアルPATH環境変数は、TNS_を配置します.ADMIN変数
sqlplusを使うと、PATH環境変数も設定されます.oracleユーザディレクトリの変更 .bashprofileは次の文を追加します.
- 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.tsnsnames.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/[email protected]/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++パッケージ)まずlibclnth.so.1.1のリンクを作成します.
- [oracle@localhost oracle]# ln -s libclntsh.so.11.1 libclntsh.so
-
- #include "dboci.h"
-
- #include <iostream>
-
- int main(void)
-
- {
-
- CDbOci oci;
-
- int iret = oci.Open("xfdb", "xfdb", "HBDB");
-
- if (iret < 1)
-
- return 0; //
-
- char*** result = NULL;
-
- int num = oci.Query("select sysdate from dual", &result, 1);
-
- if (num > 0)
-
- {
-
- for (int i=0; i < num; i++)
-
- {
-
- std::cout <<result[i][0] <<std::endl;
-
- }
-
- oci.FreeExecSqlBuf(&result, num, 1);
-
- }
-
- oci.Close();
-
- return 1;
-
- }
スクリプト:
- 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
これまでのAmsプロジェクトのデータベースアクセスの開発と配置テストに合格しました.Oracle 11 gクライアントプログラムのLinuxシステム上の配置についてここに紹介しました.何か収穫がありますように.