ubuntu 上 unixodbc 的 ODBCDM_Home 的正确值是多少

What is the correct value of ODBCDM_Home for unixodbc on ubuntu

我通过 apt-get 安装了 unixodbcunixodbc-dev。然后我安装了 oracle instantclient(包括基本驱动程序和 odbc 驱动程序)。现在我正在尝试 运行 odbc_update_ini.sh 但是我为 ODBCDM_Home 参数尝试过的路径中的 none 似乎是正确的。在我安装 unixodbcbrewOSX 上,我能够使用 /usr/local/Cellar/unixodbc/2.3.4/ 使事情正常进行。但是我无法弄清楚 ubuntu/apt-get 等价物。

我总是手动更改 odbc.iniodbcinst.ini。如果你真的想使用这个 odbc_update_ini.sh 实用程序,我建议你分析它的源代码以检查它使用的文件的路径。

如果您需要将 ODBCDM_Home 设置为根 (/) 目录,我不会感到惊讶。

在我的例子中(Xubuntu 20.04 和包 instantclient-odbc-linux.x64-19.14.0.0.0dbru.zip 中的即时客户端)具有 ODBCDM_HOME/:

sudo ./odbc_update_ini.sh /

脚本中有检查 odbc_update_ini.sh。该脚本通过搜索两个文件来检查是否安装了驱动程序管理器:$ODBCDM_HOME/etc/odbc.ini$ODBCDM_HOME/etc/odbcinst.ini。我在以下位置找到的这两个文件:/etc/odbc.ini/etc/odbcinst.ini 所以 ODBCDM_HOME 必须是 /.

因此该值与 apt get 无关,它是脚本 odbc_update_ini.sh 的问题,它是 Oracle ODBS 客户端程序包的一部分。

顺便说一句:阅读该脚本非常有用,因为出于某种原因它对我不起作用。脚本创建了文件 /opt/oracle/instantclient_19_14/odbc.ini,但无法将文件移动到 $HOME/odbc.ini,所以我不得不手动移动文件。