【问题标题】:How to connect to RDS SQL server using pyodbc in Amazon Linux AMI?如何在 Amazon Linux AMI 中使用 pyodbc 连接到 RDS SQL 服务器?
【发布时间】:2019-09-02 02:51:30
【问题描述】:

我正在 aws ec2 linux 机器和 rds sql 服务器之间建立一个 pyodbc 连接。当我使用本地 Windows 机器并能够编辑数据库时,连接正常。

https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-2017

按照本教程安装驱动程序,但仍然遇到问题

cat /etc/odbcinst.ini 

[ODBC Driver 13 for SQL Server]
Description=Microsoft ODBC Driver 13 for SQL Server
Driver=/opt/microsoft/msodbcsql/lib64/libmsodbcsql-13.1.so.9.2
UsageCount=1

[ODBC Driver 17 for SQL Server]
Description=Microsoft ODBC Driver 17 for SQL Server
Driver=/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.4.so.1.1
UsageCount=1

cat ~./odbc.ini
cat: ~./odbc.ini: No such file or directory

sn-p代码如下:

db = pyodbc.connect("Driver={Microsoft ODBC Driver 17 for SQL Server};"
                      "Server=<Server Name>;"
                      "Database=<DB Name>;"
                      "uid=<username>;pwd=<password>"
                      )

错误如下:

pyodbc.Error: ('01000', "[01000] [unixODBC][Driver Manager]Can't open lib 'Micro soft ODBC Driver 17 for SQL Server' : 找不到文件 (0) (SQLDriverConnect)")

更新:从终端查询数据库的 Sqlcmd 正在工作

【问题讨论】:

  • +1 用于向亚马逊提出与编程和开发有关的问题。

标签: sql-server linux amazon-ec2 amazon-rds pyodbc


【解决方案1】:
db = pyodbc.connect("Driver={ODBC Driver 17 for SQL Server};"
                      "Server=<Server Name>;"
                      "Database=<DB Name>;"
                      "uid=<username>;pwd=<password>"
                      )

最后这对我有用。刚刚从驱动程序名称中删除了 Microsoft 一词。

【讨论】:

    【解决方案2】:

    像这样找到你的司机

    cnxn = pyodbc.connect('DRIVER={/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.3.so.1.1};SERVER='+server+';DATABASE='+database+';uid='+username+';pwd='+ password) 
    

    【讨论】:

    • 感谢您的回答。试过这个但是没用,只是改了Driver={ODBC Driver 17 for SQL Server}; 去掉Microsoft这个词就解决了错误
    猜你喜欢
    • 1970-01-01
    • 2018-02-24
    • 1970-01-01
    • 2018-03-06
    • 2019-12-03
    • 2017-05-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多