Oracle Cloud Infrastructure(OCI)の Autonomous Database に ODBC 接続してみる


Oracle Cloud Infrastructure(OCI)の Autonomous Database に ODBC 接続してみようと思い、マニュアルや資料を探しましたが、これといったわかりやすい情報がないため、実際に接続した際の手順を記載しておきます。

※今回はクライアントにWindows10を利用しています。

1.Oracle Clientのインストール

まずは、Oracle Clientをインストールします。

1-1.Instant Clientのダウンロード

以下のサイトから、Instant Clientをダウンロードします。

クライアントマシンのOSに合わせて、64bit版の「Basic Package」と「ODBC Package」をダウンロードします。

今回は Microsoft Windows (x64) 64-bit の Version 19.8.0.0.0 をダウンロードしました。

1-2.Instant Clientの解凍

ダウンロードした2つのzipファイルを解凍します。
注意点として、解凍したファイルを同じフォルダにまとめます。
今回は、C:\OracleClient19.8 にまとめました。

1-3.ODBCドライバーのインストール

管理者モードでコマンド・プロンプトを開き odbc_install JA を実行します。

C:\OracleClient19.8>odbc_install JA
Oracle ODBC Driver is installed successfully.

2.ウォレットのダウンロード&編集

次に、Autonomous Databaseに接続するためのウォレットをダウンロードし、クライアント環境に応じて編集を行います。

2-1.ウォレットのダウンロード

OCIコンソールで接続する Autonomous Databaseの詳細ページを開き「DB接続」ボタンを押します。

ウォレット・タイプを選択し(通常は「インスタンス・ウォレット」)、「ウォレットのダウンロード」ボタンを押します。

ウォレットのパスワードを指定して、「ダウンロード」ボタンを押して、ウォレットファイルを任意のフォルダに保存します。

2-2.sqlnet.ora の編集

ダウンロードしたウォレットファイルを任意のフォルダに解凍します。

解凍後、メモ帳などで、sqlnet.oraファイルを開き、DIRECTORY属性をウォレットファイルを解凍したフォルダに変更します。
※解凍したフォルダはフルパスで指定します。

【変更前】

WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="?/network/admin")))
SSL_SERVER_DN_MATCH=yes

【変更後】

WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="解凍したフォルダ")))
SSL_SERVER_DN_MATCH=yes

今回は Instant Clientと同じ場所(C:\OracleClient19.8)に解凍したため、以下のように指定しました。

WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="C:\OracleClient19.8")))
SSL_SERVER_DN_MATCH=yes

2-3.環境変数の設定

以下の2つの環境変数を設定します。

変数名:TNS_ADMIN
変数値:ウォレットを解凍したフォルダ(今回の例だと「C:\OracleClient19.8」)

変数名:NLS_LANG
変数値:Japanese_Japan.JA16SJISTILDE(こちらは必要に応じてクライアント側の文字セットを設定)

今回は、Windows10で以下の画面より設定しました。

スタートメニューより、Windowsシステムツール>コントロールパネル
システムとセキュリティ>システム
システムの詳細設定
詳細設定タブで「環境変数」ボタン
画面下半分のシステム環境変数セクションの「新規」ボタンより設定

3.ODBCデータソースの設定

最後に ODBCデータソースの設定を行います。

スタートメニューより、Windows管理ツール>ODBCデータソース(64ビット)を選択。

ODBCデータソース・アドミニストレータ画面で「追加」ボタンを押す。

データソースに先ほどインストールした、Oracle Clientを選択して「完了」ボタンを押す。

Oracle ODBCドライバー構成画面で、以下の内容を設定

データソース名:任意の名前
説明:説明を記述
TNSサービス名:選択リストより、high/medium/lowなどを選択
ユーザーID:Autonomous Databaseのデータベース・ユーザー名

※ここで、TNSサービス名が選択できない場合は「2-3.環境変数の設定」が誤っている可能性があります。

※下半分(アプリケーション・タブなど)は必要に応じて設定(今回はデフォルトのままとしました)

「接続テスト」ボタンを押します。

パスワードを聞かれるので入力して、「OK」ボタンを押します。

正常に接続できれば、設定完了です。

最後に「OK」ボタンを押して、設定を保存します。

設定後は実際にデータベースにアクセスするツールより、作成したODBCデータソースを利用して、Autonomous Databaseに接続します。