Ubuntu 22.04安装SQL Server指南

看起来在安装过程中出现了问题,导致 mssql-server 没有正确安装。以下是排查和修复步骤:


1. 检查是否成功安装了 mssql-server

运行以下命令,确认是否已安装:

bash 复制代码
dpkg -l | grep mssql-server

如果没有任何输出,说明 mssql-server 未正确安装。


2. 重新安装 SQL Server

(1) 清理之前的安装(如有残留)
bash 复制代码
sudo apt remove mssql-server
sudo rm -rf /etc/apt/sources.list.d/mssql-server*
(2) 重新添加存储库并安装
bash 复制代码
# 重新导入 Microsoft GPG 密钥
curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc

# 添加 SQL Server 2022 存储库
sudo add-apt-repository "$(curl https://packages.microsoft.com/config/ubuntu/22.04/mssql-server-2022.list)"

# 更新并安装
sudo apt-get update
sudo apt-get install -y mssql-server
(3) 检查安装是否成功

安装完成后,验证文件是否存在:

bash 复制代码
ls /opt/mssql/bin/mssql-conf

如果文件存在,继续下一步配置;如果仍不存在,可能是网络或存储库问题。


3. 手动下载并安装 Deb 包(可选)

如果 apt 安装失败,可以尝试手动下载:

bash 复制代码
# 下载 Deb 包
wget https://packages.microsoft.com/ubuntu/22.04/mssql-server-2022/pool/main/m/mssql-server/mssql-server_<version>.amd64.deb

# 安装依赖
sudo apt-get install -y libatomic1 libxml2

# 安装 Deb 包
sudo dpkg -i mssql-server_<version>.amd64.deb
sudo apt-get install -f  # 修复依赖

替换 <version> 为实际版本号(可从存储库 URL 获取)。


4. 运行配置向导

如果 /opt/mssql/bin/mssql-conf 已存在:

bash 复制代码
sudo /opt/mssql/bin/mssql-conf setup

按提示选择版本(如 DeveloperExpress)并设置 SA 密码。


5. 启动服务

bash 复制代码
sudo systemctl start mssql-server
sudo systemctl enable mssql-server
systemctl status mssql-server --no-pager

6. 常见问题排查

(1) 存储库问题

如果 apt-get update 报错,检查存储库配置:

bash 复制代码
cat /etc/apt/sources.list.d/mssql-server*.list

确保内容为:

复制代码
deb [arch=amd64] https://packages.microsoft.com/ubuntu/22.04/mssql-server-2022 jammy main
(2) 依赖问题

修复依赖:

bash 复制代码
sudo apt-get install -f
(3) 日志检查

查看安装错误日志:

bash 复制代码
journalctl -u mssql-server -xe

7. 验证安装

成功安装后,使用 sqlcmd 连接:

bash 复制代码
sqlcmd -S localhost -U SA -P '你的密码'

输入 SELECT @@VERSION; 并执行 GO


如果仍有问题,请提供以下信息:

  1. 运行 sudo apt-get install -y mssql-server 的完整输出。
  2. ls /opt/mssql/bin/ 的结果。
  3. 错误日志(journalctl -u mssql-server)。
相关推荐
神秘面具男0325 分钟前
NFS 服务器 iSCSI 服务器
运维·服务器
iconball28 分钟前
个人用云计算学习笔记 --17(DNS 服务器)
linux·运维·笔记·学习·云计算
iconball31 分钟前
个人用云计算学习笔记 --16(DHCP 服务器)
linux·运维·笔记·学习·云计算
cpsvps33 分钟前
容器主机名解析在香港服务器内部网络的调试方案
运维·服务器·网络
Lin_Aries_042133 分钟前
部署 Jenkins 服务器
运维·服务器·docker·容器·云计算·jenkins
vortex535 分钟前
在 Kali Linux 上配置 MySQL 服务器并实现 Windows 远程连接
linux·数据库·mysql
专注VB编程开发20年41 分钟前
C#,VB.net有什么类库可以内存解压rar中某个子文件
运维·服务器·zip·rar·解压·sharpcompress·sevenzipsharp‌
迷迷的k1 小时前
云服务器 + Jenkins 实现项目自动化部署与上线
java·运维·自动化·jenkins
杨云龙UP1 小时前
CentOS 7上离线部署MySQL 8.0.X操作指南(二进制压缩包部署+独立目录部署,不在自动默认路径配置下安装)
linux·运维·服务器·mysql·centos
Ahu_iii1 小时前
【Linux】基础知识与操作汇总:一份给新手的 Linux 学习总结
linux·运维·学习