之前考虑用ODBC方法连接的SQL,需要同时安装了unixODBC和FessTDS,现在换用pdo_dblib来连接,应该不需要装了unixODBC,不过可以先装freetds的,配置好后若连不上,再安装了unixODBC,下面是安装和配置freetds的的步骤:
1,下载,安装freetds的:
wget ftp://ftp.freetds.org/pub/freetds/stable/freetds-patch ed.tar.gz //下载
tar vzxf下载的文件名//解压
./configure –with-tdsver = 7.1 –prefix = / usr / local / freetds –enable-msdblib //这里tdsver一定要写7.1,其对应的是SQL2000
make //编译
make install //安装
2,配置freetds的:
配置库文件加到LD_LIBRARY_PATH中(网上也有其他的配置方法):
export LD_LIBRARY_PATH =
LDLIBRARYPATH:/usr/local/freetds/lib/vi/root/.bashrc//不用vi直接打开文件修改应该也可以添加以下内容:exportFREETDS=/usr/local/freetdsexport
L
D
L
I
B
R
A
R
Y
P
A
T
H
:
/
u
s
r
/
l
o
c
a
l
/
f
r
e
e
t
d
s
/
l
i
b
/
v
i
/
r
o
o
t
/
.
b
a
s
h
r
c
/
/
不
用
v
i
直
接
打
开
文
件
修
改
应
该
也
可
以
添
加
以
下
内
容
:
e
x
p
o
r
t
F
R
E
E
T
D
S
=
/
u
s
r
/
l
o
c
a
l
/
f
r
e
e
t
d
s
e
x
p
o
r
t
PATH =“
PATH:
P
A
T
H
:
FREETDS / bin”
export LD_LIBRARY_PATH = $ LD_LIBRARY_PATH:/ usr / local / freetds / lib
保存退出
查看一下配置好后的版本信息:
/ usr / local / freetds / bin / tsql -C //验证TDS VERSION = 7.1
连接数据库测试:
tsql -H ip地址-p端口-U用户名-P密码
这是成功界面:
3,扩展PHP的pdo_dblib:
PHP本身如果带的有这个扩展包,切换到该目录下安装即可,若没有,可以到http://pecl.php.net搜索并下载,解压后进入相关目录下,执行一下命令:
在/ usr /本地/ PHP /斌/ phpize
./configure –with-php-config = / usr / local / php / bin / php-config –with-pdo-dblib = / usr / local / freetds /
做(这一步可能会出错,主要与PHP的版本有关)
make install
安装好后应该会在该目录下的模块文件夹里生成pdo_dblib.so文件,然后在的php.ini里添加:
延长= pdo_dblib.so
安装完成后重启服务器,查看PHP扩展,下面是成功后的界面:
![这里写图片描述(https://img-blog.youkuaiyun.com/2018082309222665?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80Mjg5NTcyNg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
在PHP代码里可用下面方法连接数据库:
$ connect = new PDO(“dblib:host = ip地址; dbname =数据库名”,“用户名”,“密码”);
若安装好连接不上,就安装了unixODBC,下面是安装步骤:
如图1所示,通过包管理器荫来安装:
yum安装unixODBC
yum安装unixODBC-devel
isql -version //看一下安装的版本
安装好后,找到/etc/odbcinst.ini文件,添加以下内容:
[FreeTDS] //名字随便,后面保持一致即可
驱动程序=在/ usr / local / lib目录/ libtdsodbc.so
保存退出
找到/etc/odbc.ini文件,添加以下内容:
Driver = FreeTDS //上面自定义的名字
服务器= IP地址
端口=端口号
数据库=数据库名//这里不写也可以,在代码里再指定
跟踪=无
保存
以上是总过程。