10.5.2.2 Linux

在 Linux 上设置驱动程序。

FreeTDS

需要 FreeTDS 版本 0.92 或更高版本。许多发行版都附带旧版本的 FreeTDS,因此可能需要单独安装。此外,发行版提供的 FreeTDS 版本也可能针对错误的 ODBC 库进行编译(通常针对 unixODBC 而不是 MySQL Workbench 使用的 iODBC)。因此,您可能需要自己构建此库。

提供了一个脚本,用于使用 MySQL Workbench 所需的选项编译 FreeTDS。您可以在 Linux 上的 /usr/share/mysql-workbench/extras/build_freetds.sh 或 macOS 上的 MySQLWorkbench.app/Contents/SharedSupport/build_freetds.sh 中找到它。要使用它,请执行以下步骤

将 FreeTDS 与 iODBC 结合使用

在为与 iODBC 一起使用而编译 FreeTDS 时(使用官方二进制文件的默认设置),必须使用 --enable-odbc-wide 命令行进行编译。未能这样做会导致崩溃和其他不可预测的错误。提供的 build_freetds.sh 脚本为您完成了此操作。

  1. 对于编译,请确保已安装 iODBC 头文件。对于 Linux,名称取决于您的系统包管理器,但常见名称是 libiodbc-devel(基于 RPM 的系统)或 libiodbc2-dev(基于 Debian 的系统)。对于 macOS,头文件随系统提供,此步骤无需执行任何其他操作。

    注意

    如果您使用的是 Oracle Enterprise Linux、RedHat、CentOS 和类似系统,则必须在 yum 中设置 EPEL 存储库,才能找到 libiodbc-devel 包。有关此步骤的更多信息,请参阅 安装 Oracle Enterprise Linux 和类似系统

  2. mkdir ~/freetds 以创建一个目录 - 在用户主目录中。

  3. build_freetds.sh 脚本复制到 ~/freetds

  4. ftp://ftp.freetds.org/pub/freetds/ 获取最新的 FreeTDS 源代码,并将 .tar.gz 源代码文件放到 ~/freetds 目录中。确保获取 FreeTDS 版本 0.92 或更高版本。

  5. cd ~/freetds

  6. 执行 build_freetds.sh

  7. 编译完成后,使用 make install 从脚本给出的路径安装它。

  8. 使用 ODBC 管理员安装驱动程序,以便 ODBC 子系统识别它。从 MySQL Workbench 中的迁移选项卡打开 ODBC 管理员(参见下面的图形)。

    图 10.40 打开 ODBC 管理员

    Content is described in the surrounding text.

    驱动程序文件名为 libtdsodbc.so,它位于 /usr/lib/usr/local/lib 中。例如,在 ODBC 驱动程序 选项卡下,单击 添加驱动程序 并填写驱动程序文件描述(名称)和路径(参见下面的图形)。记住您在此处定义的名称,因为稍后会用到它。保存驱动程序。

    图 10.41 ODBC 驱动程序添加/设置

    Content is described in the surrounding text.

    注意

    仅需要驱动程序文件名,而安装文件名可以保持未定义。

  9. 关闭 ODBC 管理员,然后单击 开始迁移。有关使用 MySQL Workbench 迁移向导建立 Microsoft SQL Server 连接的信息,请参阅 第 10.5.3.2 节,“Linux”