在Linux中,如果要使用ODBC并连到MS SQLServer,我们需要为Linux操作系统安装并配置好UnixODBC模块。很多教程中的操作步骤比较复杂,我将其中关键步骤精简到三步:
本教程以刚刚安装好的Ubuntu 12.04环境为例:
第一步,为Linux安装ODBC模块unixodbc,并添加MSSQL的ODBC驱动程序FreeTDS:
命令:在命令行终端中输入命令:
sudo apt-get install tdsodbc unixodbc
并输入系统管理员密码。
说明:tdsodbc为FreeTDS的关键包,含有MSSQL的驱动程序文件libtdsodbc.so,而unixodbc为Linux上的ODBC框架,含有关键二进制文件:libodbc.so或libodbc.so.1
第二步,找到libtdsodbc.so这个文件的路径。例如,如果文件路径为
/usr/lib/i386-linux-gnu/libtdsodbc.so,修改/etc/odbcinst.ini(没有的话要在/etc/下新建这个文件),在文件中加入:
[FreeTDS]
Driver = /usr/lib/i386-linux-gnu/libtdsodbc.so
通常libtdsodbc.so在32位Linux上位于usr/lib/i386-linux-gnu/odbc,在64位Linux上位于/usr/lib/x86_64-linux-gnu/odbc/, 而在较老的Linux版本中位于/usr/ lib/ODBC/
第三步,修改/etc/freetds/freetds.conf
在文件中的[Global]部分,确保有下面两句存在,如果没有要补上:
[Global]
TDS_Version = 8.0
client charset = UTF-8
至此,FreeTDS就配好了,我们可以用纯Python的ODBC库pypyodbc来试验一下:
import pypyodbc
pypyodbc.connect('Driver=FreeTDS;Server=192.168.1.2;port=1433;uid=sa;pwd=pwd1;database=db_name')
搞定了嘛?
来源:oschina
链接:https://my.oschina.net/u/947349/blog/108519