我试图通过pyodbc连接到我的本地postgres数据库(我想最终使用MySQL工作台导入/查看postgres架构),我似乎无法得到任何东西找到我的psqlodbc驱动程序。我brew install psqlodbc
,我分别有驱动程序和设置文件,/usr/local/lib/psqlodbcw.so
和/usr/local/lib/psqlodbca.so
。
在python中使用pyodbc库,我试图连接,但是pyodbc找不到我的驱动程序
conn_str = (
"DRIVER={psqlodbc};"
"DATABASE=postgres;"
"UID=postgres;"
"PWD=postgres;"
"SERVER=localhost;"
"PORT=5432;"
)
conn = pyodbc.connect(conn_str)
pyodbc.Error: ('01000', "[01000] [unixODBC][Driver Manager]Can't open lib 'psqlodbc' : file not found (0) (SQLDriverConnect)")
我的~/.odbc.ini
看起来像是:
1 [PostgreSQL]
2 Description = PostgreSQL driver for Unix
3 Driver = /usr/local/lib/psqlodbcw.so
4 Setup = /usr/local/lib/psqlodbca.so
El Capitan版本10.11,我得到:
file /usr/local/lib/psqlodbcw.so
/usr/local/lib/psqlodbcw.so: Mach-O 64-bit bundle x86_64
file /usr/local/lib/psqlodbca.so
/usr/local/lib/psqlodbca.so: Mach-O 64-bit bundle x86_64
不确定我应该从这里做些什么。这可能是配置或符号链接问题吗?