(1) Linux系統的ODBC unixODBC-2.2.8.tar.gz ( http://www.unixodbc.org)
(2) 連接SQLServer或Sybase的驅動 freetds-0.62.4.tar.gz ( http://www.freetds.org)
二、安裝和配置
(1) 安裝unixODBC
# tar vxzf unixODBC-2.2.8.tar.gz
# cd unixODBC-2.2.8
# ./configure --prefix=/usr/local/unixODBC
# make
# make install
(2) 安裝freetds
# tar vxzf freetds-0.62.4.tar.gz
# cd freetds-0.62.4
# ./configure --prefix=/usr/local/freetds --with-unixodbc=/usr/local/unixODBC
--with-tdsver=8.0
# make
# make install
三、配置freetds
# cd /usr/local/freetds
# vi etc/freetds.conf
修改以下的一段,並把;去掉,改好之後的內容如下:
[MyServer2k]
host=192.168.0.32
port=1433
tds version=8.0
其中的[MyServer2k]代表在客戶端使用的服務器名稱,host代表SQLServer服務器的IP地址,port代表端口,測試連接;
# bin/tsql -S MyServer2k -H 192.168.0.32 -p 1433 -U sa -P password
1> use gameDB
2> go
1> select count(*) from t_ip
4
1> quit
一切都很順利,現在來說明以下這些參數的作用,
-S:MyServer2k是在freetds.conf中定義好的
-H:192.168.0.32服務器IP地址,和freetds.conf中一致,如果使用了-S參數,這個參數可以不用
-p:1433用來指定端口是1433
-U:sa用來指定連接數據庫的用戶名
-P:password用來指定連接數據庫的密碼。
四、配置unixODBC
# cd /usr/local/unixODBC
向ODBC添加SQLServer驅動
# vi etc/odbcinst.ini
寫入如下內容:
[TDS] ;驅動名稱
Description = MS-SQLServer ;描述
Driver = /usr/local/freetds/lib/libtdsodbc.so ;驅動程序
Setup = /usr/local/freetds/lib/libtds.so ;不要問我,我也不知道這是什麼
FileUsage = 1
保存退出
添加DSN
# vi etc/odbc.ini
寫入如下內容
[123] ;DSN名稱
Driver = TDS ;ODBC驅動
Server = 192.168.0.32 ;服務器IP
Database = gameDB ;要使用的數據庫
Port = 1433 ;端口
Socket =
Option =
Stmt =
保存並退出,測試ODBC的連接
# bin/isql -v 123 sa password
SQL> select count(*) from t_ip
+----------+
| |
+----------+
| 4 |
+----------+
SQL> quit
OK,測試通過,開始測試php能否正確使用ODBC,在使用php連接ODBC之前要做些準備工作,把ODBC的共享庫都複製到/usr/lib目錄
注意:如果想遠程連接mssqlserver2005,需要把遠程訪問打開,方法如下:
1、指向“開始->程序->Microsoft SQL Server 2005->配置工具->SQL Server 外圍應用配置器”
2、在“SQL Server 2005 外圍應用配置器”頁, 單擊“服務和連接的外圍應用配置器”
3、然後單擊展開“數據庫引擎”, 選中“遠程連接”,在右邊選中“本地連接和遠程連接”,
再選擇要使用的協議,單擊“應用”,您會看到下消息:“直到重新啓動數據庫引擎服務後,對連接設置所做的更改纔會生效。”,單擊“確定”按鈕返回
4、展開“數據庫引擎”, 選中“服務”,在右邊單擊“停止”,等到 MSSQLSERVER 服務停止,
然後單擊“啓動”,重新啓動MSSQLSERVER 服務。