10.1.1 ODBC 库

笔记

使用 Oracle 提供的 MySQL Workbench 二进制文件时可以跳过此部分。

必须存在 ODBC 驱动程序管理器库。Windows 和 macOS 都提供了一个。

Linux

iODBC: Oracle 提供的 MySQL Workbench 二进制文件已经包含 iODBC,无需额外操作。如果自己编译,则必须安装iODBC或unixODBC。建议使用 iODBC。您可以通过在基于 Debian 的系统上安装 libiodbc2 包或在基于 RPM 的系统上安装 libiodbc 来使用您的发行版提供的 iODBC 库。

pyodbc: 是 MySQL Workbench 用于与 ODBC 接口的 Python 模块,可用于迁移 ODBC 兼容的数据库,例如 PostgreSQL 和 DB2。在 Windows 和 macOS 中,它包含在 Workbench 中。在 Linux 中,Oracle 提供的二进制文件还包括 pyodbc。

如果您使用的是自编译的二进制文件,请确保您拥有最新版本,并且它是根据您选择的 ODBC 管理器库编译的,无论它是 iODBC 还是 unixODBC。从版本 3.0.6 开始,pyodbc 将默认针对 unixODBC 进行编译。如果针对 iODBC 进行编译,则必须执行以下步骤:

  1. 对于编译,请确保安装了 iODBC 标头。对于 Linux,名称取决于系统的包管理器,但常见名称是 libiodbc-devel(基于 RPM 的系统)或 libiodbc2-dev(基于 Debian 的系统)。对于 macOS,标头随系统一起提供,此步骤不需要其他操作。

  2. 在 pyodbc 源目录中,编辑 setup.py 文件并在第 157 行附近将以下行替换为 settings['libraries'].append('odbc')settings['libraries'].append('iodbc')

  3. 以root用户执行以下命令: CFLAGS=`iodbc-config --cflags` LDFLAGS=`iodbc-config --libs` python setup.py install