私は Mac (macOS Mojave 10.14.1) で作業しており、Oracle データベースに接続するための ODBC ドライバーをセットアップしようとしています (最終的な目標はパッケージR
を使用して接続することですDBI
)。
必要なものを正確に表現できる技術言語はありませんが、ドライバーがどこにあるかを調べて、それを R コードで使用し、ODBC 管理者ツールで設定する必要があると思います。
私はこれに関する指示に従ってきましたOracleブログ:
- ダウンロードバージョン 12.2.0.1.0 (64 ビット) > ベース > 基本パッケージ
- ダウンロード開発とランタイム > ODBC パッケージ
- 上記のファイルを解凍してここに保存します:
/Users/my_user_name/Applications/instantclient_12_2
- macOSライブラリ検索パスにファイルを追加する
ln -s $(pwd)/libclntsh.dylib.12.1 $(pwd)/libclntshcore.dylib.12.1 ~/lib
- Instantclient_12_2/odbc_update_ini.sh のドライバー名に小さなパッチを適用します (元の手順へのリンクを参照)
- 設定スクリプトを実行する
sudo sh odbc_update_ini.sh /usr/local
と、*** ODBCINI environment variable not set,defaulting it to HOME directory!
- 次に、次の操作を行います。
sudo chown $USER ~/.odbc.ini
この時点で私は迷っています。ここでファイルを見つけました.odbc.ini
: /Users/my_user_name/.odbc.ini
(入力する必要がありますls -l -a
今、接続方法がわかりません。ODBC アドミニストレーターにドライバー ファイルを追加する方法がわからず、R 経由でアクセスできません。
以下は私の R コードです。ドライバー パスが間違っていると思います。
> con = DBI::dbConnect(odbc::odbc()
+ ,driver = "/Users/my_user_name/.odbc.ini",
+ ,DBCName = "AUA8"
+ ,MechanismName = "ldap"
+ ,uid = 'user_name'
+ ,pwd = 'my_password')
Error: nanodbc/nanodbc.cpp:950: 01000: [unixODBC][Driver Manager]Can't open lib '/Users/my_user_name/.odbc.ini' : file not found
これは私のODBC管理者の写真ですご覧のとおり、Teradata ドライバーしか表示されません。Oracle ドライバーを追加しようとしましたが、およびにどのようなパスを設定すればよいかわかりませdriver file
んsetup file
。
データベースの技術的限界に達していますので、ご協力をよろしくお願いいたします。