*Instant Client [#pb3c8f4c]
Instant Clientライセンス契約書に従って使用できるもの。従えばタダで使えるもの。
内容品はODBCドライバやらJDBCドライバ、加えSQLPLUSも手に入ります。

取得先
http://www.oracle.com/technology/global/jp/software/tech/oci/instantclient/index.html
ORACLEへの接続・操作ならこれらでいいのかな。
Instant Client Package - Basic   instantclient-basic-nt-11.2.0.3.0.zip
Instant Client Package - SQL*Plus  instantclient-sqlplus-nt-11.2.0.3.0.zip
Instant Client Package - ODBC    instantclient-odbc-nt-11.2.0.3.0.zip

まずBasicを展開すると「instantclient_11_2」なるフォルダになるが、これを C:\ORACLE と改名してして配置する。
他のSQL*Plus、ODBCも同じく展開して、その中身を全て C:\ORACLE に配置する。

次に、windowsの環境変数の設定。システム環境変数で
&ref(2013y01m19d_134221299.png,nolink);
PATHに C:\ORACLE を追加  &ref(2013y01m19d_134342539.png,nolink);
NLS_LANに JAPANESE_JAPAN.JA16SJISTILDE     &ref(2013y01m19d_134532026.png,nolink);
TNS_ADMINに C:\ORACLE  &ref(2013y01m19d_134552194.png,nolink);
をそれぞれ定義します。

その後、コマンドプロンプトを立ち上げて、
#code(nonumber){{
C:\Users\foo> cd c:\oracle
C:\ORACLE> odbc_install.exe JA
Oracle ODBC Driver is installed successfully.

c:\ORACLE>
}}
としてODBCドライバをインストールします。
***tnsnames.ora [#vfdb4cc7]
クライアントが使う物。このファイルでサーバを指し示す定義を簡単にしたもの?かな。
下記はサーバORACLEが、ポート番号1521で稼働していて、その中のSID &color(green){''aers''};へのアクセスを
&color(green){''AERS''};として定義したもの。
#code{{
AERS =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = ORACLE)(PORT = 1521))
    (CONNECT_DATA = (SERVER = DEDICATED)(SERVICE_NAME = aers))
  )
}}
このファイルをTNS_ADMINで定義した場所に配置して同クライアントで下記のようにすると
#code(nonumber){{
C:\Users\foo>sqlplus sys/*******@AERS as sysdba

SQL*Plus: Release 11.2.0.3.0 Production on 土 1月 19 13:58:26 2013

Copyright (c) 1982, 2011, Oracle.  All rights reserved.

Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
に接続されました。
SQL>
}}
と接続が完了する

***Windowsファイアウォール [#s53a0eba]
サーバ側ではポート番号1521を待ち受けることになるので、通常でブロックされている状態を解除する必要がある。
[スタート]->[コントロールパネル]->[Windowsファイアウォール]を起動させ、左メニューから''受信の規制''を選択して、同パネル右上の[操作]から[新しい規則..]を選択します。
&ref(2013y01m19d_141052124.png,nolink);
種類としては[ポート]を選択します。
&ref(2013y01m19d_141323908.png,nolink);
TCPを選択して、特定のローカルポートとして''1521''を指定します。
&ref(2013y01m19d_141609108.png,nolink);
操作としては''接続を許可する''を選択します。
&ref(2013y01m19d_141653228.png,nolink);
規制ですが、''パブリック''が入っていればOK。本来ならドメイン、プライベートに収まるように調整が必要なのでしょうけど。
&ref(2013y01m19d_141810468.png,nolink);
規則の名称は''ORACLE''とします。
&ref(2013y01m19d_141950307.png,nolink);
これで受信、つまり外部からサーバへの方向でORACLEのポート1521が解除されました。クライアントが発したリクエストを受信できる状態です。
他、細かい設定が作成した''ORACLE''のプロパティーから定義できます。っが、研究室ならこれでいいのかと。

***windows7 64bit [#t6c29a1c]
windows7 &color(red){64bit}; OSで、別マシンの32bitORACLE(10.2)に接続したいときた。
InstantClientの10.2.0.5(32bit)をダウンロードして、windows7 64bitに入れようと
#code(nonumber){{
C:\ORACLE> odbc_install.exe JA
}}
と入力したら、うまくインストールできなかった。
調べてみたら、dllが足りていないようで、mfc71.dllとmsvcr71.dllを&color(red){C:\Windows\SysWOW64};に入れれば解決。
肝心のmfc71.dllとmsvcr71.dllはどこから入手すればいいの?
っとなるが、、、まあーXPから、、
-MFC71.DLL
http://www.microsoft.com/ja-jp/download/details.aspx?id=21440
-MSVCR71.dll
http://answers.microsoft.com/ja-jp/windows/forum/windows8_1-winapps/msvcr71dll/89a54257-c9af-48bb-b68c-62e90383c441?auth=1
1

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS