0

PHP用のODBC拡張機能をサーバーの1つ(Redhat)にインストールしようとしましたが、正しくインストールされたと思いますが、接続をテストしようとすると、データソース名もエラーメッセージが表示されます。長い...修正するのは簡単なことのように聞こえますが、私は解決できません。

基本的に、これらは私が現時点で持っている設定です:

# odbcinst -j
DRIVERS............: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
FILE DATA SOURCES..: /etc/ODBCDataSources
USER DATA SOURCES..: /root/.odbc.ini
SQLULEN SIze.......: 4
SQLSETPOSIROW......: 2

MySQLドライバーをodbcinst.iniで次のように定義しています。

[MySQL]
Description    = ODBC for MySQL
Driver         = /usr/lib/libmyodbc5.so
Setup          = /usr/lib/libodbcmyS.so
FileUsage      = 1

私は再確認しましたが、ドライバーとセットアップのパスが正しく、正しいファイルを指しています。

そこで、odbc.iniファイルを編集してシステムデータソースを追加しようとしています。さまざまなサイトの例に従って、さまざまな形式で試してみました。

http://developer.mindtouch.com/en/kb/Using_the_ODBC_extension_on_Linux#Install_unixODBC

http://dev.mysql.com/doc/refman/5.0/en/connector-odbc-configuration-dsn-unix.html

ご覧のとおり、私はそれらのいくつかをコメントアウトし、別のものを試しました:

;[mytest]
;driver = MySQL
;Database = moodle
;Server = localhost
;Socket = /var/lib/mysql/mysql.sock

;[mynew]
;Description = MySQL
;Driver      = MySQL
;SERVER      = localhost
;USER        = root
;PASSWORD    = 
;PORT        = 3306
;DATABASE    = moodle

[Default]
Driver       = /usr/lib/libmyodbc5.so
Description  = Connector/ODBC 5 Driver DSN
SERVER       = localhost
PORT         =
USER         = root
Password     =
Database     = moodle
SOCKET       =  

しかし、私が走るときはいつでも

isql -v

問題があるかどうかを確認するために、私は常に次のようになります。

[IM010][unixODBC][Driver Manager]Data source name too long
[ISQL]ERROR: Could not SQLConnect

エラーをグーグルで検索すると、ASPのようなものの中に接続文字列を持っている人の結果が表示されるようですが、この方法でサーバー上で機能させる方法については何もありません...

誰かが私にアドバイス/助けを提供できますか?

さらに詳しい情報が必要な場合は、お知らせください。

ありがとうございました!

4

1 に答える 1

1

起動時isqlに、man ページで定義されているデータ ソース名を指定する必要があります。

あらすじ

   isql DSN [UID [PWD]] [options]

オプション

   DSN    Name of the data source you want to connect to.

の構成を前提として/etc/odbc.ini、起動isql -v Defaultして接続をテストします。構成ファイルでは、データ ソース名は、括弧内に定義した名前です。

于 2013-03-22T14:51:06.277 に答える