php同時連線mssql和mysql

2021-09-21 11:05:34 字數 2262 閱讀 6138

前幾天研究了怎麼讓php同時連線mssql和mysql,讓然還是因為有需求了。

網上google了一下發現真是暈啊,能用--with-mssql  --with-pdo-dblib這兩個編譯選項做,還需要freetds和unixodbc。

不過php的pdo好像還在測試階段就放棄了--with-pdo-dblib這個方法了。

下面是我經驗分享。

1.裝unixodbc

#yum install unixodbc*

在odbcinst.ini中新增,或用圖形介面配置。

[sql2k5]

description = v0.64 with protocol v8.0

driver = /usr/local/lib/libtdsodbc.so

driver64 = /usr/local/lib/libtdsodbc.so

setup = /usr/lib/libtdss.so

setup64 = /usr/lib/libtdss.so

usagecount = 1

cptimeout =

cpreuse =

在odbc.ini中新增,或用圖形介面配置。

[mssql]

description = sql2k5

driver = sql2k5

servername = sql2k5

#google來的資訊說麵這裡不要設定ip位址什麼的,要和freetds.conf裡的設定一樣。

database = 

uid = username

pwd = passwd

port = port

2.裝freetds

#./configure --prefix=/usr/local/freetds --with-tdsver=8.0 --enable-msdblib

#make && make install

在/etc/bashrc中加入export path="$path:/usr/local/freetds/bin"。/etc/profile中也行。

#echo "/usr/local/freetds/lib" >> /etc/ld.so.conf

#ldconfig

在freetds.conf中新增

[sql2k5]

host = ip

port = port

tds version = 8.0

3.裝php

#./configure --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-apxs2=/usr/sbin/apxs --with-bz2 --enable-zip --with-curl --enable-ftp --with-gd --with-pic --with-jpeg-dir --with-png-dir --with-zlib --with-mhash --with-mcrypt --enable-mbstring --without-pear --with-libxml-dir=/usr --enable-xml --with-curl --enable-soap --with-ldap --with-ldap-sasl --with-xmlrpc --enable-pcntl --with-openssl --enable-bcmath --enable-shmop --enable-sysvsem 

--with-mssql=/usr/local/freetds --with-mysql=/var/lib/mysql

由於開發環境需要php有很多功能所以編譯選項比較複雜,如果編譯過程中提示缺少東西的話,用yum裝就行了。

我的安裝過程中提示沒有libmycrypt,yum也不行,所以又編譯安裝了libmycrypt。

tar zxvf libmcrypt-2.5.8.tar.gz 

cd libmcrypt-2.5.8/

./configure

make

make install

/sbin/ldconfig

cd libltdl/

./configure --enable-ltdl-install

make

make install

途中還遇到找不到libmysqlclient.so的問題,在/usr/lib下建立乙個鏈結指向/usr/lib/mysql/libmysqlclient.so.15.0.0即可解決。

4.測試

測試程式是我們的php程式設計師寫的,就不發出來了。

php通過pdo連線mssql

pdo mssql 公司有個asp.net專案,想用php改寫,但用php運算元據庫太坑了 1 安裝擴充套件 php.ini extension php sqlsrv 53 ts vc6.dll extension php pdo sqlsrv 53 ts vc6.dll 2 安裝 microsof...

php連線mssql注意事項

確認伺服器正確之後,再確認ntwdblib.dll 檔案位置是否放到了 c windows system32下 同時要保證ntwdblib.dll 這個檔案的版本和sqlserver的版本對應 下面是對應關係 2.ntwdblib.dll 版本為 2000.2.8.0 是 對應 sqlserver2...

PHP連線msSQL資料庫方法

什麼是mssql呢?mssql是指微軟的sqlserver資料庫伺服器,它是乙個資料庫平台,提供資料庫的從伺服器到終端的完整的解決方案,其中資料庫伺服器部分,是乙個資料庫管理系統,用於建立 使用和維護資料庫。sql server一開始並不是微軟自己研發的產品,而是當時為了要和ibm競爭時,與syba...