Amazon ec2 安装unixODBC>;=适用于msodbcsql17的Linux Redhat/CentOS上的2.3.1
我尝试使用CentOS/RedHat(Linux)在AWS EC2上安装msodbcsql17 以下是我在Microsoft()中遵循的步骤: 该指令在安装msodbcsql17之前一直有效。我收到以下错误消息:Amazon ec2 安装unixODBC>;=适用于msodbcsql17的Linux Redhat/CentOS上的2.3.1,amazon-ec2,centos,redhat,pyodbc,unixodbc,Amazon Ec2,Centos,Redhat,Pyodbc,Unixodbc,我尝试使用CentOS/RedHat(Linux)在AWS EC2上安装msodbcsql17 以下是我在Microsoft()中遵循的步骤: 该指令在安装msodbcsql17之前一直有效。我收到以下错误消息: Error: Package: msodbcsql17 (packages-microsoft-com-prod) Requires: unixODBC >= 2.3.1 Available: unixODBC-2.2.14-14.7.
Error: Package: msodbcsql17 (packages-microsoft-com-prod)
Requires: unixODBC >= 2.3.1
Available: unixODBC-2.2.14-14.7.amzn1.i686 (amzn-main)
unixODBC = 2.2.14-14.7.amzn1
我认为问题在于,unixODBC的最大可用版本低于2.3.1,但如何安装msodbcsql17以连接Microsoft?经过长时间的研究,我找到了一个解决方案:
sudo rpm-i unixODBC-2.3.1-11.el7.x86_64.rpm
安装必要的版本(可能需要将版本号更改为上载文件的版本号)sudo rpm-i msodbcsql17-17.1.0.1-1.x86_64.rpm
sudo rpm-i mssql-tools-17.1.0.1-1.x86_64.rpm
yum安装,而不是rpm-i
更新:请看@KnudLarsen的评论 下面是我的docker文件中的一个片段,展示了如何在amazon linux上安装:
RUN curl http://mirror.centos.org/centos/7/os/x86_64/Packages/unixODBC-2.3.1-14.el7.x86_64.rpm > /tmp/unixODBC-2.3.1-14.el7.x86_64.rpm
RUN yum -y install /tmp/unixODBC-2.3.1-14.el7.x86_64.rpm
RUN curl http://mirror.centos.org/centos/7/os/x86_64/Packages/unixODBC-devel-2.3.1-14.el7.x86_64.rpm > /tmp/unixODBC-devel-2.3.1-14.el7.x86_64.rpm
RUN yum -y install /tmp/unixODBC-devel-2.3.1-14.el7.x86_64.rpm
RUN curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/mssql-release.repo
RUN ACCEPT_EULA=Y yum -y install msodbcsql17
如果您想要pyodbc,请提供奖励:
RUN yum -y install gcc72-c++ \
&& yum -y install python36-devel \
&& yum -y install zip \
&& yum clean all
RUN python3.6 -m pip install --upgrade pip
RUN python3.6 -m pip install pyodbc
Sean Stayn:Better=#yum安装下载/unixODBC-2.3.1-11.el7.x86_64.rpm
。也就是说,rpm
命令不处理依赖项。除此之外,默认rpm命令也是yum使用的rpm-Uvh
@KnudLarsen谢谢您的评论!我是Linux的初学者,但这是唯一的办法,我可以解决我的问题。我已经更新了我的答案,并暗示了您的评论,希望我们可以帮助其他用户了解您的其他信息。
RUN yum -y install gcc72-c++ \
&& yum -y install python36-devel \
&& yum -y install zip \
&& yum clean all
RUN python3.6 -m pip install --upgrade pip
RUN python3.6 -m pip install pyodbc