温馨提示×

CentOS SQL Server配置指南

小樊
33
2025-12-09 22:27:39
栏目: 云计算

CentOS 上 SQL Server 配置指南

一 环境准备与版本选择

  • 操作系统建议:CentOS 7/8(均为 x86_64),确保系统已更新并具备 sudo 权限。
  • 版本建议:在 CentOS 7 系列上优先选择 SQL Server 2019(社区与实践中最为成熟);更高主版本在 CentOS 7 上支持有限。
  • 资源建议:至少 2–4 GB 内存(生产环境建议 8 GB+),并准备可访问外网的仓库源以下载安装包。

二 安装与初始化

    1. 更新系统与安装依赖
    • 执行:sudo yum update -y
    • 安装常用依赖:sudo yum install -y wget openssl11-devel libaio libcurl libxml2-devel bzip2-devel libjpeg-turbo-devel freetype-devel libpng-devel
    1. 添加 Microsoft 仓库并导入 GPG 密钥(以 RHEL/7 为例,若为 RHEL/8 将路径中的 7 替换为 8
    • 仓库:sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2019.repo
    • 密钥:sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
    1. 安装 SQL Server 服务器
    • 执行:sudo yum install -y mssql-server
    1. 运行安装向导并初始化实例
    • 执行:sudo /opt/mssql/bin/mssql-conf setup,按提示选择版本(如 Developer/Express)并设置 SA 强密码
    1. 启动与开机自启
    • 执行:sudo systemctl start mssql-server && sudo systemctl enable mssql-server

三 客户端工具与连通性

    1. 安装命令行工具与驱动
    • 添加工具仓库:sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/7/prod.repo
    • 安装工具:sudo yum install -y mssql-tools unixODBC-devel
    • 配置 PATH(对当前用户生效):
      • echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
      • echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
      • source ~/.bashrc
    1. 本机连通性验证
    • 执行:sqlcmd -S localhost -U SA -P 'YourStrongPassword'
    • 简单查询:SELECT @@VERSION; GO
    1. 远程访问与防火墙
    • 开放端口:sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent && sudo firewall-cmd --reload
    • 远程连接工具:使用 SSMSNavicat,主机填服务器 IP,端口 1433,认证使用 SA

四 常用配置与性能优化

    1. 启用 SQL Server 代理(SQL Server Agent)
    • 执行:
      • USE master;
      • EXEC sp_configure 'show advanced options', 1; RECONFIGURE;
      • EXEC sp_configure 'Agent XPs', 1; RECONFIGURE;
    1. 内存上限(避免占用全部物理内存)
    • 示例(限制为 16 GB):
      • EXEC sp_configure 'show advanced options', 1;
      • RECONFIGURE;
      • EXEC sp_configure 'max server memory (MB)', 16384; RECONFIGURE;
    1. 监听端口与 TLS(mssql-conf)
    • 查看/修改端口:sudo /opt/mssql/bin/mssql-conf get network.tcpport
    • 设置端口:sudo /opt/mssql/bin/mssql-conf set network.tcpport 1433
    • 启用/配置 TLS:使用 sudo /opt/mssql/bin/mssql-conf set tls ...(生产建议启用并配置有效证书)
    1. 数据与日志目录(默认在 /var/opt/mssql
    • 示例(自定义数据目录):
      • sudo /opt/mssql/bin/mssql-conf set filelocation.defaultdatadir /data/mssql/data
      • sudo /opt/mssql/bin/mssql-conf set filelocation.defaultlogdir /data/mssql/log
    • 修改后需重启服务:sudo systemctl restart mssql-server

五 常见问题与排查

  • 无法远程连接
    • 核对服务状态:sudo systemctl status mssql-server(应为 active (running)
    • 核对监听端口:sudo ss -lntp | grep 1433sudo firewall-cmd --list-ports
    • 云服务器需同时检查 安全组/NACL 是否放行 TCP 1433
  • SA 登录失败
    • 确认密码强度与键盘布局;必要时重置 SA 密码:sudo /opt/mssql/bin/mssql-conf set-sa-password
  • sqlcmd 找不到命令
    • 检查 PATH 是否包含 /opt/mssql-tools/bin/opt/mssql/bin,并执行 source ~/.bashrc
  • 内存占用过高
    • 设置最大服务器内存(见第四节),并重启实例以生效
  • 配置文件与路径
    • 主配置:/var/opt/mssql/mssql.conf;数据默认目录:/var/opt/mssql/data(迁移请使用 mssql-conf 或标准安装程序流程)

0