千家信息网

Linux 下 PHP 5.2.x 连接SQL Server数据库FreeTDS的配置是什么

发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,这篇文章给大家介绍Linux 下 PHP 5.2.x 连接SQL Server数据库FreeTDS的配置是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。CentOS 5.4
千家信息网最后更新 2025年02月03日Linux 下 PHP 5.2.x 连接SQL Server数据库FreeTDS的配置是什么

这篇文章给大家介绍Linux 下 PHP 5.2.x 连接SQL Server数据库FreeTDS的配置是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

 CentOS 5.4 Linux 下的 PHP(FastCGI) 需要连接相关部门的SQL Server 2000数据库,配置了扩展FreeTDS扩展。

   1、编译安装FreeTDS

mkdir -p /data0/software/
cd /data0/software/
wget ftp://ftp.ibiblio.org/pub/Linux/ALPHA/freetds/stable/freetds-stable.tgz
tar zxvf freetds-stable.tgz
cd freetds-0.82/
./configure --prefix=/usr/local/webserver/freetds --with-tdsver=8.0 --enable-msdblib
make && make install
cd ../

echo "/usr/local/webserver/freetds/lib/" > /etc/ld.so.conf.d/freetds.conf
ln -s /usr/local/webserver/freetds/lib/libsybdb.so.5.0.0 /usr/local/webserver/freetds/lib/libsybdb.so.4
/sbin/ldconfig

rm -f /usr/local/webserver/freetds/etc/freetds.conf
vi /usr/local/webserver/freetds/etc/freetds.conf


  输入以下内容:

引用

[global]
# TDS protocol version
; tds version = 4.2

# Whether to write a TDSDUMP file for diagnostic purposes
# (setting this to /tmp is insecure on a multi-user system)
; dump file = /tmp/freetds.log
; debug flags = 0xffff

# Command and connection timeouts
; timeout = 10
; connect timeout = 10

# If you get out-of-memory errors, it may mean that your client
# is trying to allocate a huge buffer for a TEXT field.
# Try setting 'text size' to a more reasonable limit
text size = 64512

host = mssql.yourdomain.com
port = 1433
tds version = 8.0
client charset = UTF-8



   2、编译安装PHP自带MSSQL扩展
  进入本地已存在的 php-5.2.XX源码包目录:

cd /data0/software/ php-5.2.XX/ext/mssql/
/usr/local/webserver/ php/bin/ phpize
./configure --with- php-config=/usr/local/webserver/ php/bin/ php-config --with-mssql=/usr/local/webserver/freetds/
make && make install



   3、在php.ini配置文件中增加mssql.so

vi /usr/local/webserver/ php/etc/ php.ini


  增加一行:

引用

extension = "mssql.so"



   4、重启PHP FastCGI

/usr/local/webserver/ php/sbin/ php-fpm restart



   5、测试文件(test_mssql.php):

view plain copy to clipboard print ?

  1. header("Content-type: text/html; charset=utf-8");

  2. $msdb=mssql_connect("mssql.yourdomain.com:1433","username","password");

  3. if (!$msdb) {

  4. echo "connect sqlserver error";

  5. exit;

  6. }

  7. mssql_select_db("database_name",$msdb);

  8. $result = mssql_query("SELECT top 5 * FROM table", $msdb);

  9. while($row = mssql_fetch_array($result)) {

  10. var_dump($row);

  11. }

  12. mssql_free_result($result);

  13. ?>

关于Linux 下 PHP 5.2.x 连接SQL Server数据库FreeTDS的配置是什么就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

0