Ubuntu下通過unixODBC連接MS SqlServer2005 - god9me的專欄 - 博客頻道 - CSDN.NET
一、下載相關軟件 unixODBC、freetds? ?
? ? (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目錄
? ? # cp /usr/local/unixODBC/lib/libodbc.* /usr/lib
注意:如果想遠程連接mssqlserver2005,需要把遠程訪問打開,方法如下:
? ? 1、指向“開始->程序->Microsoft SQL Server 2005->配置工具->SQL Server 外圍應用配置器”
? ? 2、在“SQL Server 2005 外圍應用配置器”頁, 單擊“服務和連接的外圍應用配置器”
? ? 3、然后單擊展開“數據庫引擎”, 選中“遠程連接”,在右邊選中“本地連接和遠程連接”,
再選擇要使用的協議,單擊“應用”,您會看到下消息:“直到重新啟動數據庫引擎服務后,對連接設置所做的更改才會生效。”,單擊“確定”按鈕返回
? ? 4、展開“數據庫引擎”, 選中“服務”,在右邊單擊“停止”,等到 MSSQLSERVER 服務停止,
然后單擊“啟動”,重新啟動MSSQLSERVER 服務。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
