安装Ubuntu 16.04 LTS:如何安装ODBC?

在安装了新的Ubuntu 16.04副本之后,我尝试按照https://help.ubuntu.com/community/ODBC上的官方文档安装MySQL ODBC:

# apt-get install libmyodbc Reading package lists... Done Building dependency tree Reading state information... Done Package libmyodbc is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or is only available from another source E: Package 'libmyodbc' has no installation candidate 

我可以看到这是一个良好的开端!

在包存储库中搜索ODBC也不是特别有用。 这是任何现代Linux系统中非常重要的一部分! 它去哪儿了?!

PS:在help.ubuntu.com上更新文档也不错!

编辑添加:此外,似乎这个版本的Ubuntu上不存在驱动程序文件libmyodbc.so。

直接从dev.mysql.com下载: https : //dev.mysql.com/downloads/connector/odbc/

选择Ubuntu 16.04 64位或32位(可能是64位),下载TAR球,然后将文件libmyodbc5a.so复制到/usr/lib/x86_64-linux-gnu/odbc/

然后,创建/etc/odbcinst.ini

 [MySQL] Description = ODBC for MySQL Driver = /usr/lib/x86_64-linux-gnu/odbc/libmyodbc5a.so Setup = /usr/lib/x86_64-linux-gnu/odbc/libodbcmyS.so FileUsage = 1 

/etc/odbc.ini

 [my-connector] Description = MySQL connection to database Driver = MySQL Database = mydb Server = localhost User = dbuser Password = dbpass Port = 3306 Socket = /var/run/mysqld/mysqld.sock 

请注意,username标记是User (而不是在某些示例中看到的用户名 ),套接字在/var/run ,而不在/var/lib

 echo "select 1" | isql -v my-connector 

然后为我工作

该软件包适用于Xenial,可在此处查看 。 因此,它应该安装。 确保在安装之前运行sudo apt-get update 。 此外,请确保Xenial的Universe存储库是源的一部分(如上面的链接所示,此包属于Universe存储库)。 您可以在etc/apt/sources.list文件中检查此源是否是可用源的一部分。 应该有一条线,如:

 deb http://com.archive.ubuntu.com/ubuntu/ xenial universe 

(镜像可能与com.archive...不同com.archive...

如果仍然无法安装(这很奇怪),那么请转到上面的网站,选择您的架构版本并下载.deb文件。 例如,对于amd64,文件是这样的: http : //launchpadlibrarian.net/141005765/libmyodbc_5.1.10-3_amd64.deb 。 然后,打开终端,转到包含该文件的文件夹并运行:

 sudo dpkg -i file.deb sudo apt-get install -f 

(后一个命令是为了防止某些依赖关系未得到满足)

我在http://dev.mysql.com/downloads/connector/odbc/中找到了它(我选择了“Ubuntu Linux 15.10(x86,64位),压缩TAR存档”)

下载并提取文件,然后获得libmyodbc5a.so(对于ANSI系统)和libmyodbc5w.so(对于Unicode)。