ちょっと前に、C言語プログラムからODBC接続でDB入出力を行う下準備的な記事を書いたけど、中途半端で終わってたので、とりあえずODBC接続確認まで実施した備忘録。
必要パッケージのインストール
$ sudo apt install unixodbc unixodbc-dev libodbc1 mariadb-odbc-driver
もしかしたら odbcinst が依存パッケージとしてインストールされないかもしれないです。
その場合は、追加でインストールしてくだされ。
odbcinst.ini にドライバの設定を追加
[MariaDB Unicode]
Driver=libmaodbc.so
Description=MariaDB Connector/ODBC(Unicode)
Threading=0
UsageCount=1
私の環境だと、編集しなくてもこうなってた。
odbc.ini にDSN追加
サンプルはこんな感じ。実験用のDBと、そのユーザを作った。
[experiments]
Description = My experiment DB
Driver = MariaDB Unicode
Server = localhost
Database = experiments
User = experiments
Password = experiments
Port = 3306
odbc.ini をApache2などの外部プログラムから参照させる関係で、パーミッション644のままにしています!(パスワードが丸見えです…)
マルチユーザ環境の場合には、システムDSNを使わない等の対策を!
ODBCドライバの確認
$ odbcinst -q -d # 登録されているドライバを確認
DSNの設定を確認
odbcinst -q -s # 設定されているDSNを確認
接続確認
$ isql -v experiments

コメント