私はejabberdというサーバをインストールしたAmazonのLinuxインスタンスを持っています その中にerlangで書かれたコードがdb.erlとしてあります。Erlangとmysql odbcを接続する際のエラー
-module(db).
-export([connection/0]).
connection()->
odbc:start(),
ConnectionString = "DSN=qaz;UID=root;PWD=abc",
{ok, Ref} = odbc:connect(ConnectionString, []),
Ref.
しかし、私、このコードを実行しようとしているとき、私は私が私の/etc/odbc.iniを編集し、次の構成
と/root/.odbc.iniいる[error] gen_server myapp terminated with reason: no match of right hand
value {error,"[unixODBC][Driver Manager]Can't open lib
'/usr/lib/libmyodbc5.so' : file not found SQLSTATE IS: 01000 Connection to
database failed."} in db:connection/0 line 15
10:34:15.111 [error] CRASH REPORT Process myapp with 0 neighbours exited
with reason: no match of right hand value {error,"[unixODBC][Driver
Manager]Can't open lib '/usr/lib/libmyodbc5.so' : file not found SQLSTATE
IS: 01000 Connection to database failed."} in db:connection/0 line 15 in
gen_server:terminate/7 line 812
10:34:15.111 [error] Supervisor frequency_sup had child myapp started with
myapp:start() at <0.502.0> exit with reason no match of right hand value
{error,"[unixODBC][Driver Manager]Can't open lib '/usr/lib/libmyodbc5.so' :
file not found SQLSTATE IS: 01000 Connection to database failed."} in
db:connection/0 line 15 in context child_terminated
としてエラーが出ます
[ODBC Data Sources]
qaz= ODBC for MySQL
[qaz]
Driver = /usr/lib64/libmyodbc5.so
Description = ODBC for MySQL
SERVER = localhost
PORT = 3306
USER = root
Password = abc
Database = mydb
と私のODBCINST.INIファイルこの
# Example driver definitions
# Driver from the postgresql-odbc package
# Setup from the unixODBC package
[PostgreSQL]
Description = ODBC for PostgreSQL
Driver = /usr/lib/psqlodbc.so
Setup = /usr/lib/libodbcpsqlS.so
Driver64 = /usr/lib64/psqlodbc.so
Setup64 = /usr/lib64/libodbcpsqlS.so
FileUsage = 1
# Driver from the mysql-connector-odbc package
# Setup from the unixODBC package
[MySQL]
Description = ODBC for MySQL
Driver = /usr/lib/libmyodbc5.so
Setup = /usr/lib/libodbcmyS.so
Driver64 = /usr/lib64/libmyodbc5.so
Setup64 = /usr/lib64/libodbcmyS.so
FileUsage = 1
[MySQL ODBC 5.3 Unicode Driver]
Driver = /usr/lib/libmyodbc5w.so
UsageCount = 1
[MySQL ODBC 5.3 ANSI Driver]
Driver = /usr/lib/libmyodbc5a.so
UsageCount = 1
のように見えます
そして、私は、コマンドを実行すると
isql qaz [root [abc]]
私は
としてエラーが発生します[ISQL]ERROR: Could not SQLConnect
誰もが私に問題を伝え、私が行っているのlinux でODBCの構成を設定する正しい方法で私を導くことができますそれはWindows上でもうまくいきますが、私はLinuxにあまり慣れていません。 ありがとうございました