LinuxからSQL Serverに接続する

NO IMAGE

LinuxサーバからSQL Serverに接続するために必要な設定を行います。

環境:CentOS6.3 64bit
DB:SQL Server 2005

必要パッケージをインストールします。

 

#yum install unixODBC freetds

 

ODBCの設定ファイルを編集します。

 

#vi /etc/odbc.ini


下記のように設定ファイルを記述します。

 

SQL Server 2012の教科書 開発編
松本 美穂 松本 崇博
ソシム
売り上げランキング: 31955

[ODBC Data Sources]
<NAME> = FreeTDS ODBC Driver   ←<NAME>部分は、好きな名前をつけてください。
[<NAME>]
Driver = /usr/lib64/libtdsodbc.so.0

Servername = sqlserver1
Database = DB_NAME
Port = 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>go

Microsoft SQL Server  2005(Intel X86)
        May  3 2005 23:18:38
        Copyright (c) 1988-2003 Microsoft Corporation
        Personal Edition on Windows NT 5.2 (Build 3790: Service Pack 2)
 
(1 row affected)
1>
このように値が取得できれば、freetdsの設定は完了です。

次にODBCを利用して接続ができるか確認します。
下記ようにコマンドを実行します。

 

 

isql -v <NAME> <SQLServerのID> <SQLServerのパスワード>
実行例は下記のようになります。
isql -v NAME sa password

設定に問題がなければ、下記のようになります。

 
[php]
+—————————————+
| Connected!                            |
|                                       |
| sql-statement                         |
| help [tablename]                      |
| quit                                  |
|                                       |
+—————————————+
[/php]

SQL>
SQL>select @@version
として値が表示されれば正常に接続されています。

これで、PHPやperl等から接続して、SQL Serverの値を取得することができます。

 

LinuxからSQL Server接続カテゴリの最新記事

%d人のブロガーが「いいね」をつけました。