微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Teradata / SQL Server ODBC 配置 - LD_LIBRARY_PATH

如何解决Teradata / SQL Server ODBC 配置 - LD_LIBRARY_PATH

我有一个最初配置了 teradata ODBC 驱动程序的 docker 镜像(Debian GNU/Linux 10 (buster))。这工作正常。

在安装过程中需要以下环境变量才能使其工作:

LD_LIBRARY_PATH=/opt/teradata/client/16.20/lib64:/opt/teradata/client/16.20/lib:$LD_LIBRARY_PATH

除此之外,现在我也通过以下方式添加sql Server ODBC:

RUN apt-get update && \
    apt-get install curl -y && \
    apt-get install vim -y  && \
    apt-get install gnupg -y  && \
    apt-get install dialog apt-utils -y && \
    curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -  && \
    curl https://packages.microsoft.com/config/debian/10/prod.list > /etc/apt/sources.list.d/mssql-release.list  && \
    apt-get update && \
    ACCEPT_EULA=Y apt-get install msodbcsql17 -y && \
    ACCEPT_EULA=Y apt-get install mssql-tools -y && \
    PATH="${PATH}:/opt/mssql-tools/bin" && \
    apt-get install unixodbc-dev -y  && \
    apt-get install gcc g++ -y  && \
    pip install pyodbc && \
    chmod +rwx /etc/ssl/openssl.cnf && \
    sed -i 's/TLSv1.2/TLSv1/g' /etc/ssl/openssl.cnf && \
    sed -i 's/SECLEVEL=2/SECLEVEL=1/g' /etc/ssl/openssl.cnf

仅当我从 LD_LIBRARY_PATH删除以下 teradata 链接时,sql Server ODBC 才有效。但是如果去掉,teradata ODBC 就不能用了。

/opt/teradata/client/16.20/lib64:/opt/teradata/client/16.20/lib

了解其中的原因以及我如何在同一图像中同时工作会很棒。

作为临时解决方案,我正在运行带有/不带有环境变量的容器,具体取决于是否需要 teradata 或 sql Server 连接。然而,它远非理想。

感谢任何帮助!

安德拉斯

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?