环境 lamp [ centos6.5 apache php 5.3 mysql 5.6 ]
yum安装
必要yum源 eprl.repo (odbc一些包这个源里面才有)
目标 php 访问mssql
1.安装必要软件
unixODBC.x86_64 : odbc包
unixODBC-devel.x86_64 : odbc驱动
[ unixODBC-kde.x86_64 : odbc配置工具,控制台下用不到 ]
mysql-connector-odbc.x86_64 : ODBC 链接MYSQL的驱动
freetds.x86_64 : freetds软件包, 用来链接mssql
freetds-devel.x86_64 : freetds驱动
[freetds-doc.x86_64 : 可有可无,主要是一些说明文档和实例]
2.参考文档
http://www.ibm.com/developerworks/cn/linux/database/odbc/
http://blog.csdn.net/kingmax26/article/details/6012790
http://blog.csdn.net/qdujunjie/article/details/36416661
http://blog.csdn.net/chenjiebin/article/details/7278304
3.先安装eprl.repo
1. wget http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
2. rpm -ivh epel-release-6-8.noarch.rpm
3. yum clean all
4. yum makecache
4.关闭防火墙和SELINUX, 等通了在配置规则
5.开始安装ODBC
yum insatll unixODBC
yum insatll unixODBC-devel
yum install mysql-connector-odbc
安装好之后 /etc目录下自动创建 odbc.ini, odbcinst.ini
vim odbcinst.ini, 里面有例子稍微改改就行了
配置mysql-odbc驱动
[odbc_mysql] //驱动名字
Description = ODBC for MySQL //驱动描述
Driver = /usr/lib/libmyodbc5.so //32位驱动的库
Setup = /usr/lib/libodbcmyS.so //32位驱动安装库 (其实可以省略)
Driver64 = /usr/lib64/libmyodbc5.so //64位驱动库
Setup64 = /usr/lib64/libodbcmyS.so //64位驱动安装库 (其实可以省略)
FileUsage = 1 //必须带上,咱不知道有啥用
vim odbc.init
[local_mysql] //odbc-dns名字
Driver = odbc_mysql //驱动名字,就是刚才在odbcinst.ini中设置的
Server = localhost //host
Prot = 3306 //端口
Database = test //数据库
socket = /var/lib/mysql/mysql.sock //mysql套接字文件, 如果该文件路径被改变,则需要设置,否者可以直接默认不填写
6.测试是否连通mysql
isql local_mysql(dns名字) root(数据库名字) 123456(数据库密码) -v(显示详细信息,如果有错误的话) .
yum install freetds
yum install freetds-devel
安装好之后, /etc目录下面自动创建一个 freetds.conf
vim /etc/freetds.conf
文件中也有示例,照着修改下就好了
[mssql_server] //服务器名字
host = 192.168.1.15
port = 1433
tds version = 8.0 //强制指定tds版本为8.0
测试下是否连通
tsql -S mssql_server(刚才设置的服务器名字) -U sa(用户名) -P '123456'(数据库密码) -D nx(数据库名字)
vim /etc/odbcinst.ini
[odbc_mssql]
Description = ODBC for MsSQL
Driver64 = /usr/lib64/libtdsodbc.so
Setup64 = /usr/lib64/libtdsS.so
FileUsage = 1
vim /etc/odbc.ini
[client_mssql]
Driver = odbc_mssql
Servername = mssql_server
//这里要写上freetds设置的服务器名字,设置了Servername就不要设置Server,这两个会冲突
Database = nx_log
/*注意关闭防火墙和SELINUX, 等通了在配置规则*/