如何从Ubuntu

时间:2016-01-12 15:31:22

标签: python ubuntu azure pyodbc unixodbc

在过去的两天里,我一直在尝试连接到远程Windows SQL服务器,但没有取得明显的成功。我正在尝试使用pyodbc包连接python。

我已经尝试过关注此事的所有博客文章而没有太多运气。我首先关注that一个我认为很努力但最终过于语无伦的IMO。

我已根据博文中的建议安装了unixODBC经理。我从Windows下载了可用的redhat软件包并运行安装脚本,但每次我尝试连接到db时都会得到

pyodbc.Error: ('01000', "[01000] [unixODBC][Driver Manager]Can't open lib 'SQL Server Native Client 10.0' : file not found (0) (SQLDriverConnect)")

有没有办法在几个小时内实现这一点,而无需自己调整窗口的安装脚本?有人可以概述需要采取的步骤以及需要安装的模块,以便某人能够从Linux机器连接到Windows SQL Server吗?

我目前正在使用Ubuntu 15.04。

更新

我还尝试了here给出的说明。查看azure平台中SQL db的详细信息,明确指出驱动程序应该是SQL Server Native Client 10.0。我应该考虑强制使用该驱动程序,还是可以按照第二篇博文中的建议使用FreeTDS?

1 个答案:

答案 0 :(得分:3)

在文件系统中检查名为libsqlncli *的文件。 如果你找到它,请检查:

  • 权限
  • 在针对此文件执行的ldd命令的输出中报告“NOT FOUND”的行;
  • 如果一切正常,请在odncinst.ini文件中检查/ ddd以下条目:

    [SQL Server Native Client 1[0|1].0] Description=Microsoft SQL Server ODBC Driver V1.0 for Linux Driver=/opt/microsoft/sqlncli/lib64/libsqlncli-11.0.so.1790.0 UsageCount=1