linux下php加装mssql模块的方法
程序员文章站
2022-06-06 11:15:16
1、安装配置freetds 复制代码 代码如下: wget http://mirrors.xmu.edu.cn/ubuntu/archive/pool/main/f/fre...
1、安装配置freetds
wget http://mirrors.xmu.edu.cn/ubuntu/archive/pool/main/f/freetds/freetds_0.82.orig.tar.gz
tar zxf freetds_0.82.orig.tar.gz
cd freetds_0.82
./configure --prefix=/usr/local/freetds --with-tdsver=8.0 -–enable-msdblib -–enable-dbmfix -–with-gnu-ld -–enable-shared -–enable-static
make && make install
2、编译php的mssql模块
cd /path/to/php/source 进入php源码目录
cd ext/mssql 进入mssql模块源码目录
/usr/local/webserver/php/bin/phpize 生成编译配置文件
./configure –with-php-config=/usr/local/webserver/php/bin/php-config –with-mssql=/usr/local/freetds
make
make install
编译完成生成 mssql.so,修改php.ini,将该模块载入:
extension=”/path/to/extension/mssql.so”
3、配置mssql
cd /usr/local/freetds/etc
编辑文件:
vi 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
client charset = utf-8 #加入
#加入
[server2005]
host = 192.168.x.x
port = 1433
tds version = 7.2
4、测试php连接mssql
<?php
try {
$hostname='218.x.x.x';//注意,这里和上面不同,要直接用ip地址或主机名
$port=1433;//端口
$dbname="user";//库名
$username="database";//用户
$pw="passwd";//密码
$dbh= new pdo("dblib:host=$hostname:$port;dbname=$dbname","$username","$pw");
} catch (pdoexception $e) {
echo"failed to get db handle: ".$e->getmessage() ."n";
exit;
}
echo'connent mssql succeed';
$stmt=$dbh->prepare("select * from z_2010pinjiu_user");
$stmt->execute();
while ($row=$stmt->fetch()) {
print_r($row);
}
unset($dbh); unset($stmt);
?>
复制代码 代码如下:
wget http://mirrors.xmu.edu.cn/ubuntu/archive/pool/main/f/freetds/freetds_0.82.orig.tar.gz
tar zxf freetds_0.82.orig.tar.gz
cd freetds_0.82
./configure --prefix=/usr/local/freetds --with-tdsver=8.0 -–enable-msdblib -–enable-dbmfix -–with-gnu-ld -–enable-shared -–enable-static
make && make install
2、编译php的mssql模块
复制代码 代码如下:
cd /path/to/php/source 进入php源码目录
cd ext/mssql 进入mssql模块源码目录
/usr/local/webserver/php/bin/phpize 生成编译配置文件
./configure –with-php-config=/usr/local/webserver/php/bin/php-config –with-mssql=/usr/local/freetds
make
make install
编译完成生成 mssql.so,修改php.ini,将该模块载入:
extension=”/path/to/extension/mssql.so”
3、配置mssql
复制代码 代码如下:
cd /usr/local/freetds/etc
编辑文件:
vi 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
client charset = utf-8 #加入
#加入
[server2005]
host = 192.168.x.x
port = 1433
tds version = 7.2
4、测试php连接mssql
复制代码 代码如下:
<?php
try {
$hostname='218.x.x.x';//注意,这里和上面不同,要直接用ip地址或主机名
$port=1433;//端口
$dbname="user";//库名
$username="database";//用户
$pw="passwd";//密码
$dbh= new pdo("dblib:host=$hostname:$port;dbname=$dbname","$username","$pw");
} catch (pdoexception $e) {
echo"failed to get db handle: ".$e->getmessage() ."n";
exit;
}
echo'connent mssql succeed';
$stmt=$dbh->prepare("select * from z_2010pinjiu_user");
$stmt->execute();
while ($row=$stmt->fetch()) {
print_r($row);
}
unset($dbh); unset($stmt);
?>
上一篇: 小编教五招 让皱纹滚走
下一篇: 艰难的选择