使用 Oracle 提供的 MySQL Workbench 二进制文件时,可以跳过此部分。
必须存在 ODBC 驱动程序管理器库。Windows 和 macOS 都提供了一个。
Linux
iODBC
: Oracle 提供的 MySQL Workbench 二进制文件已包含 iODBC,无需任何额外操作。如果您自己编译它,则必须安装 iODBC 或 unixODBC。建议使用 iODBC。您可以使用发行版提供的 iODBC 库,在基于 Debian 的系统上安装 libiodbc2 包,或在基于 RPM 的系统上安装 libiodbc。
pyodbc
: 是 MySQL Workbench 用于与 ODBC 交互的 Python 模块,可用于迁移 PostgreSQL 和 DB2 等符合 ODBC 的数据库。在 Windows 和 macOS 中,它包含在 Workbench 中。在 Linux 中,Oracle 提供的二进制文件也包含 pyodbc。
如果您使用的是自编译的二进制文件,请确保您拥有最新版本,并且它针对您选择的 ODBC 管理器库进行编译,无论是 iODBC 还是 unixODBC。从 3.0.6 版本开始,pyodbc 默认情况下将针对 unixODBC 进行编译。如果您要针对 iODBC 进行编译,则必须执行以下步骤
在编译时,请确保已安装 iODBC 头文件。对于 Linux,名称取决于您系统的包管理器,但常见名称是
libiodbc-devel
(基于 RPM 的系统)或libiodbc2-dev
(基于 Debian 的系统)。对于 macOS,头文件随系统提供,此步骤无需任何额外操作。在 pyodbc 源代码目录中,编辑 setup.py 文件,在第 157 行左右,将以下行:
settings['libraries'].append('odbc')
替换为settings['libraries'].append('iodbc')
以 root 用户身份执行以下命令:
CFLAGS=`iodbc-config --cflags` LDFLAGS=`iodbc-config --libs` python setup.py install