php osx php pdo连接mssql方法

本文介绍如何在Mac OS X Mavericks系统中安装并配置PHP的MSSQL支持,包括使用autoconf、freetds、php源码安装等步骤,并提供了配置示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

autoconf

autoconf-latest.tar.gz

$./configure
$make
$sudo make install

freetds


FreeTDS:  freetds-stable.tgz .

$./configure --prefix=/usr/local/freetds --with-tdsver=8.0 --sysconfdir=/usr/local/freetds/conf
$make
$sudo make install

php源码

下载与安装版本对应版本的源码 php-5.4.17.tar.bz2 from Apple

mssql.so

$phpize
$./configure --with-php-config=/usr/bin/php-config --with-mssql=/usr/local/freetds/
$make
$sudo cp modules/mssql.so /usr/lib/php/extensions/no-debug-non-zts-20100525/

pdo_dblib.so

<pre name="code" class="plain" style="color: rgb(43, 43, 43); font-size: 16px; line-height: 24px;"><pre name="code" class="plain">$phpize
$./configure --with-php-config=/usr/bin/php-config --with-pdo-dblib=/usr/local/freetds/
$make
$sudo cp modules/pdo_dblib.so /usr/lib/php/extensions/no-debug-non-zts-20100525/

 
 


编辑php.ini

$sudo vim /etc/php.ini
添加如下语句

  • extension=mssql.so
  • extension=pdo_dblib.so

重启apache

$sudo /usr/sbin/apachectl restart
至此安装完成

配置freetds.conf

$sudo vim /usr/local/freetds/conf/freetds.conf
<span style="font-family:monospace, serif;">[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

# Define a connection to the MSSQL server.
[host别名]
        host = 192.168.3.100
        port = 1433
        tds version = 8.0</span>

示例代码

        try {
            $dbh = new PDO("dblib:host=$dbhost;dbname=$dbname", "$dbuser","$dbpwd"););
            echo '成功';
        } catch (PDOException $e) {
            echo 'Connection failed: ' . $e->getMessage();
        }
其中$dbhost是freetds.conf文件中的host别名。



原文连接

http://blog.andyhunt.info/2013/11/29/php-mssql-pdo_dblib-freetds-support-on-mac-osx-10-9-mavericks/

http://qa.helplib.com/733737

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值