PHP头条
热点:

基于Linux下PHP连接SQL Server的FreeTDS配置


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

1、编译安装FreeTDS

  1. mkdir -p /data0/software/  
  2. cd /data0/software/  
  3. wget ftp://ftp.ibiblio.org/pub/Linux/ALPHA/freetds/stable/freetds-stable.tgz  
  4. tar zxvf freetds-stable.tgz  
  5. cd freetds-0.82/  
  6. ./configure --prefix=/usr/local/webserver/freetds --with-tdsver=8.0 --enable-msdblib  
  7. make && make install  
  8. cd ../  
  9.  
  10. echo "/usr/local/webserver/freetds/lib/" > /etc/ld.so.conf.d/freetds.conf  
  11. ln -s /usr/local/webserver/freetds/lib/libsybdb.so.5.0.0 /usr/local/webserver/freetds/lib/libsybdb.so.4  
  12. /sbin/ldconfig  
  13.  
  14. rm -f /usr/local/webserver/freetds/etc/freetds.conf  
  15. vi /usr/local/webserver/freetds/etc/freetds.conf  

输入以下内容:

引用

  1. [global]  
  2.         # TDS protocol version  
  3. ;       tds version = 4.2  
  4.  
  5.         # Whether to write a TDSDUMP file for diagnostic purposes  
  6.         # (setting this to /tmp is insecure on a multi-user system)  
  7. ;       dump file = /tmp/freetds.log  
  8. ;       debug flags = 0xffff 
  9.  
  10.         # Command and connection timeouts  
  11. ;       timeout = 10 
  12. ;       connect timeout = 10 
  13.  
  14.         # If you get out-of-memory errors, it may mean that your client  
  15.         # is trying to allocate a huge buffer for a TEXT field.  
  16.         # Try setting 'text size' to a more reasonable limit  
  17.         text size = 64512 
  18.  
  19.         host = mssql.yourdomain.com  
  20.         port = 1433 
  21.         tds version = 8.0  
  22.         client charset = UTF-8 

2、编译安装PHP自带MSSQL扩展

进入本地已存在的php-5.2.XX源码包目录:

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

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

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

增加一行:

引用

  1. extension = "mssql.so" 

4、重启PHP FastCGI

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

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

  1. php     
  2. header("Content-type: text/html; charset=utf-8");     
  3. $msdb=mssql_connect("mssql.yourdomain.com:1433","username","password");     
  4. if (!$msdb) {     
  5.         echo "connect sqlserver error";     
  6.         exit;     
  7. }     
  8. mssql_select_db("database_name",$msdb);     
  9. $result = mssql_query("SELECT top 5 * FROM table", $msdb);     
  10. while($row = mssql_fetch_array($result)) {     
  11.         var_dump($row);     
  12. }     
  13. mssql_free_result($result);     
  14. ?>    
  1. PHP中发现奇异Bug 导致Web服务器崩溃
  2. 解析PHP与SQL注入攻击
  3. PHP生成随机字符串的三种方法

www.phpzy.comtrue/php/10134.htmlTechArticle基于Linux下PHP连接SQL Server的FreeTDS配置 CentOS 5.4 Linux 下的 PHP(FastCGI) 需要连接相关部门的SQL Server 2000数据库,配置了扩展FreeTDS扩展。 1、编译安装FreeTDS mkdir-p/data0/software/ cd/data0/software/...

相关文章

相关频道:

PHP之友评论

今天推荐