在AWS CentOS上安装SQL Server失败,依赖问题如何解决?
解决AWS CentOS上SQL Server安装依赖问题的实操步骤
别着急,咱们一步步排查解决,先从最常见的问题入手:
1. 先确认你的CentOS版本是否符合SQL Server要求
SQL Server对CentOS版本有严格限制,比如2019版本支持CentOS 7.x/8.x,2022版本支持7.x/8.x/9.x。先跑命令确认你的系统版本:
cat /etc/centos-release
如果版本不在官方支持列表里,大概率会出依赖兼容问题,建议更换对应版本的CentOS镜像。
2. 重置SQL Server的官方YUM源
很多时候依赖报错是因为源配置过期或者不对,先清理旧源再重新添加:
- 删除现有SQL Server repo文件:
sudo rm -rf /etc/yum.repos.d/mssql-server.repo
- 根据你的CentOS版本添加对应官方源:
- CentOS 7用2019源:
sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/centos/7/mssql-server-2019.repo- CentOS 8用2019源:
sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/centos/8/mssql-server-2019.repo- CentOS 9用2022源:
sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/centos/9/mssql-server-2022.repo - 清理YUM缓存并更新:
sudo yum clean all && sudo yum makecache fast
3. 手动修复OpenSSL依赖问题
你遇到的“OpenSSL已安装但仍报错”,大概率是版本不匹配——SQL Server需要的是openssl11(不是系统默认的openssl):
- 先尝试直接安装openssl11:
sudo yum install -y openssl11
- 如果提示找不到包,先添加EPEL源(CentOS全版本通用):
sudo yum install -y epel-release
再重新安装openssl11。
- 安装完成后,让系统优先加载openssl11的库:
临时生效(当前会话):
永久生效(重启后仍有效):export LD_LIBRARY_PATH=/usr/lib64/openssl11:$LD_LIBRARY_PATH
把上面的命令添加到/etc/profile或~/.bashrc文件末尾,然后执行source /etc/profile。
4. 重新尝试安装SQL Server
做完以上步骤后,重新执行安装命令:
sudo yum install -y mssql-server
安装完成后,运行配置脚本设置版本和SA密码:
sudo /opt/mssql/bin/mssql-conf setup
5. 兜底排查其他依赖
如果还是报错,先试试安装SQL Server常用的基础依赖:
sudo yum install -y libunwind libicu
另外AWS的CentOS镜像偶尔会有网络或源代理问题,确保你的实例能正常访问外网。
内容的提问来源于stack exchange,提问作者CompiledIO
相关产品推荐
相关产品推荐

