CentOS7 宝塔 安装FreeTDS 连接mssql2000
1、下载 并安装FreeTDS
# 下载 freetds,可下载最新 ftp://ftp.freetds.org/pub/freetds/stable/freetds-1.3.10.tar.gz
$ wget ftp://ftp.freetds.org/pub/freetds/stable/freetds-1.3.10.tar.gz
# 解压
$ tar -zxvf freetds-1.3.10.tar.gz
# 进入解压后的目录,注意版本号
$ cd freetds-1.3.10
# 查看当前支持的 tdsver 版本,选择对应支持的 MSSQL 版本
$ ./configure --help
# 重编译安装,注意 tdsver 版本
$ ./configure --prefix=/www/server/freetds/1.3.10 --enable-msdblib --with-tdsver=7.1
$ make && make install
简单注释:
--prefix=/usr/local/freetds FreeTDS的默认安装目录 /usr/local/freetds
--enable-msdblib 允许 Microsoft 的函数库
--with-tdsver=7.3 指定TDS的协议版本,不填写则默认5.0版,7.1支持MSSQL2000,7.3支持MSSQL2008。
TDS协议版本:
Microsoft SQL Server 2000 7.1 Include support for bigint (64 bit integers), variant and collation on all fields. Collation is not widely used.
Microsoft SQL Server 2005 7.2 Includes support for varchar(max), varbinary(max), xml datatypes and MARS[a].
Microsoft SQL Server 2008 7.3 Includes support for time, date, datetime2, datetimeoffset.
N/A 8.0 FreeTDS will alias this version to 7.1 for backwards compatibility reasons, but this should be avoided due to future compatibility concerns. See note below on obsolete versions.
验证:
/www/server/freetds/1.3.10/bin/tsql -C
测试连接:
TDSVR=auto /www/server/freetds/1.2.18/bin/tsql -H 127.0.0.1 -p 1433 -U sa -P admin
配置 freetds.conf 文件:
$ vi /www/server/freetds/1.3.10/etc/freetds.conf
[global]
tds version = 8.0
# 针对 MSSQL 修改配置
# A typical Microsoft server
[mssql]
# 这是MSSQL服务器IP/端口号
host = 1.2.3.4
port = 1433
tds version = 8.0
client charset=UTF-8 #确保中文无乱码
text size = 20971520
安装PHP扩展(PHP7.4 pdo_dblib)
下载 https://www.php.net/distributions/php-7.4.29.tar.gz
把 php-7.4.29extpdo_dblib
上传到 /www/server/php/74/lib/php/extensions/no-debug-non-zts-20190902/
cd /www/server/php/74/lib/php/extensions/no-debug-non-zts-20190902/pdo_dblib
/www/server/php/74/bin/phpize
./configure --with-php-config=/www/server/php/74/bin/php-config --with-pdo-dblib=/www/server/freetds/1.3.10
make && make install
在php.ini中配置好pdo_dblib.so,重启服务器后查看phpinfo。
extension=pdo_dblib.so
PHP连接原生代码
new PDO ("dblib:version=8.0;host=1.2.3.4:1433;dbname=MuOnline","sa","123456");
或者使用 freetds.conf
文件连接
new PDO ("dblib:host=mssql;dbname=MuOnline","sa","123456");
gbk转utf8
iconv('utf-8','GBK',$row['name']);
安装PHP扩展(PHP5.6 mssql.so)
cd /www/server/php/56/lib/php/extensions/no-debug-non-zts-20131226/mssql
/www/server/php/56/bin/phpize
./configure --with-php-config=/www/server/php/56/bin/php-config --with-mssql=/www/server/freetds/1.3.10
make && make install
阅读剩余
THE END