CentOS与SQL Server兼容性问题解决方法
SQL Server从2017版本开始支持Linux系统(包括CentOS),但不同版本的SQL Server对CentOS版本有明确要求:
安装SQL Server前需确保系统具备必要依赖,若遇到依赖缺失错误,可通过以下步骤解决:
sudo yum install -y gcc-c++ make python3 python3-pip libffi-devel安装编译工具和库;sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/centos/7/prod/x86_64/mssql-server-ver2019-release-17.0.1-1.x86_64.rpm添加源;openssl11-devel),通过sudo yum install -y 缺失包名补充。若无法从客户端连接SQL Server,需依次检查以下环节:
sudo systemctl status mssql-server,若未运行则启动服务(sudo systemctl start mssql-server);sudo firewall-cmd --zone public --add-port 1433/tcp --permanent添加防火墙规则,并执行sudo firewall-cmd --reload生效;/etc/mssql/mssql.conf文件,确保listen_addresses = 0.0.0.0(允许所有网络接口监听);Enforcing模式,可能阻止远程连接,可临时禁用(sudo setenforce 0)测试,若解决问题则配置SELinux策略(如setsebool -P mssql_can_network_connect 1)。CentOS上的SQL Server性能可能略低于Windows,但可通过以下方式提升:
max server memory参数)、启用查询存储(Query Store)监控性能;sys.dm_exec_query_stats视图),添加合适的索引(如覆盖索引),避免全表扫描。mysqldump导出数据(mysqldump -u root -p 数据库名 > backup.sql),再通过SQL Server的bcp工具或sqlcmd导入(sqlcmd -S localhost -U SA -i backup.sql)。