在linux下的freetds装置体式款式


-
第一步:编译装置freetds: 810635
失失freetds-0.53.tgz后
cp freetds-0.53.tgz /tmp/. (拷贝freetds包到/tmp目录)
cd /tmp (进入目录)
tar zxvf freetds-0.53.tgz (解压)
cd freetds-0.53 (进入解压后目录)
./configure –prefix=/usr/local/freetds --with-tdsver=8.0
gmake (天生Makefile,make也可以)
gmake install (装置)
configure申明');:--prefix=/usr/local/freetds是指装置到/usr/local/freetds这个目录中
--with-tdsver=8.0是指装置tds 8.0版本(要是没有加这个参数,则遵照默许编译为5.0。5.0毗连数据库的端口是4000,而不是SQLServer的1433)
第二步:从头编译PHP4
./configure [--with-apxs --with-mysql...] --with-sybase=/usr/local/freetds(请过细是sybase)
make
make install
第三步:设备freetds
vi /usr/local/freetds/etc/freetds.conf
详细设备见该文件中的申明');
典型设备:
[sqlserver]
host = host (你的SQLServer凝滞名字也许IP地点)
port = 1433 (端口)
tds version = 8.0
在这个设备文件中可以设备Windows域登陆也许SQLServer账号登陆两种体式款式
第四步:设备php.ini文件
找到 ;extension=mssql80.so
将正文;去失成
extension=mssql70.so
第五步:测试能否能用:
# bin/tsql -S MyServer2k -H 192.168.0.32 -p 1433 -U sa -P password
1> use gameDB
2> go
1> select count(*) from t_ip
4
1> quit
要是是用LINUXODBC连时改如下:
1.先装置ODBC:
# tar vxzf unixODBC-2.2.8.tar.gz
# cd unixODBC-2.2.8
# ./configure --prefix=/usr/local/unixODBC
# make
# make install
2.设备FREETDS时改成如下语句:
# ./configure --prefix=/usr/local/freetds --with-unixodbc=/usr/local/unixODBC --with-tdsver=8.0
3.设备ODBC:
# cd /usr/local/unixODBC
向ODBC添加SQLServer驱动
# vi etc/odbcinst.ini[code]写入如下内容:[code][TDS] ;驱动称呼
Description = MS-SQLServer ;描写
Driver = /usr/local/freetds/lib/libtdsodbc.so ;驱动次序
Setup = /usr/local/freetds/lib/libtds.so ;
FileUsage = 1
保存介入
添加DSN
# vi etc/odbc.ini
写入如下内容
[123] ;DSN称呼
Driver = TDS ;ODBC驱动
Server = 192.168.0.32 ;效劳器IP
Database = gameDB ;要运用的数据库
Port = 1433 ;端口
Socket =
Option =
Stmt =
保存并介入,测试ODBC的毗连
# bin/isql -v 123 sa password
SQL> select count(*) from t_ip
----------
| |
----------
| 4 |
----------
SQL> quit
OK,测试颠末进程,劈头测试perl能否精确运用ODBC
在运用perl毗连ODBC之前要做些准备事情
把ODBC的共享库都复制到/usr/lib目录
# cp /usr/local/unixODBC/lib/libodbc.* /usr/lib
4.PERL脚本测试能否成功:
# vi test.pl
内容如下
#!/usr/bin/perl
use DBI;
$dbh=DBI->connect('dbi:ODBC:123','sa','password');
my $sth=$dbh->prepare("select * from t_ip";
$sth->execute();
while (@data=$sth->fetchrow_array()){
print "$data[0] $data[1] $data[2]\n";
}
保存介入
# perl test.pl
要是可以看到数据库中的记实,就申明');可以正常运用ODBC perl了。
既然曾经可以完成perl颠末进程ODBC来毗连SQLServer了,那么异样可以运用PHP ODBC SQLServer

来自: 新客网(www.xker.com) 详文参考:http://www.xker.com/page/e2008/0516/52833.html


版权声明: 原创作品,应允转载,转载时请务必以超链接方式标明文章 原始来由 、作者信息和本声明。不然将追究执法责任。

原文地址:https://www.cnblogs.com/zgqjymx/p/1975497.html