如何在 Amazon Linux AMI 中使用 pyodbc 连接到 RDS SQL 服务器?
How to connect to RDS SQL server using pyodbc in Amazon Linux AMI?
我正在 aws ec2 linux 机器和 rds sql 服务器之间建立一个 pyodbc 连接。当我使用本地 windows 机器并能够编辑数据库时,连接正常。
按照本教程安装了驱动程序,但仍然遇到问题
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
代码片段如下:
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' : file not found (0) (SQLDriverConnect)")
更新:从终端查询数据库的 Sqlcmd 正在运行
像这样找到你的driver
cnxn = pyodbc.connect('DRIVER={/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.3.so.1.1};SERVER='+server+';DATABASE='+database+';uid='+username+';pwd='+ password)
db = pyodbc.connect("Driver={ODBC Driver 17 for SQL Server};"
"Server=<Server Name>;"
"Database=<DB Name>;"
"uid=<username>;pwd=<password>"
)
最后这对我有用。刚刚从驱动程序名称中删除了 Microsoft 一词。
我正在 aws ec2 linux 机器和 rds sql 服务器之间建立一个 pyodbc 连接。当我使用本地 windows 机器并能够编辑数据库时,连接正常。
按照本教程安装了驱动程序,但仍然遇到问题
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
代码片段如下:
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' : file not found (0) (SQLDriverConnect)")
更新:从终端查询数据库的 Sqlcmd 正在运行
像这样找到你的driver
cnxn = pyodbc.connect('DRIVER={/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.3.so.1.1};SERVER='+server+';DATABASE='+database+';uid='+username+';pwd='+ password)
db = pyodbc.connect("Driver={ODBC Driver 17 for SQL Server};"
"Server=<Server Name>;"
"Database=<DB Name>;"
"uid=<username>;pwd=<password>"
)
最后这对我有用。刚刚从驱动程序名称中删除了 Microsoft 一词。