LinuxサーバからSQL Serverに接続するために必要な設定を行います。
環境:CentOS6.3 64bit
DB:SQL Server 2005
必要パッケージをインストールします。
#yum install unixODBC freetds
ODBCの設定ファイルを編集します。
#vi /etc/odbc.ini
下記のように設定ファイルを記述します。
ソシム
売り上げランキング: 31955
[ODBC Data Sources]
<NAME> = FreeTDS ODBC Driver ←<NAME>部分は、好きな名前をつけてください。
[<NAME>]
Driver = /usr/lib64/libtdsodbc.so.0Servername = sqlserver1Database = DB_NAMEPort = 1433
次に、freetds.confを編集します。
#vi /etc/freetds.conf
下記のように設定ファイルに記述します。
tds versionはこちらを参考にしてください
[sqlserver1]
host = 192.168.xx.xx
port = 1433
tds version = 7.2
client charset = UTF-8
language = english
freetdsの設定に問題がないか確認します。
下記のようにコマンドを実行します。
#tsql -S sqlserver1 -U sa -P password
下記のように表示されます。
locale is “ja_JP.UTF-8”locale charset is “UTF-8”using default charset “UTF-8”1>
SQL Serverのクエリを実行し問題がないかを確認します。
1>use master
2>go
1>select @@version
2>goMicrosoft SQL Server 2005(Intel X86)May 3 2005 23:18:38Copyright (c) 1988-2003 Microsoft CorporationPersonal Edition on Windows NT 5.2 (Build 3790: Service Pack 2)(1 row affected)1>
次にODBCを利用して接続ができるか確認します。
下記ようにコマンドを実行します。
isql -v <NAME> <SQLServerのID> <SQLServerのパスワード>
実行例は下記のようになります。
isql -v NAME sa password
設定に問題がなければ、下記のようになります。
+---------------------------------------+ | Connected! | | | | sql-statement | | help [tablename] | | quit | | | +---------------------------------------+
SQL>select @@version
これで、PHPやperl等から接続して、SQL Serverの値を取得することができます。