以下是CentOS上SQL Server故障的排查步骤:
检查服务状态
sudo systemctl status mssql-server # 查看服务是否运行
sudo systemctl start mssql-server # 若未运行,启动服务
查看日志文件
/var/log/mssql/errorlog
,定位具体错误信息。journalctl -u mssql-server
,查看服务启动过程及异常。验证配置文件
/etc/mssql/mssql.conf.d/90-sqlservr.conf
,确保listen_addresses
为0.0.0.0
(监听所有接口)。排查网络与防火墙
ping 服务器IP
,确保服务器可达。telnet 服务器IP 1433
,确认1433端口监听正常。sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
sudo firewall-cmd --reload
处理权限与文件问题
sudo chown -R mssql:mssql /var/opt/mssql
。sudo /opt/mssql/bin/sqlservr -m # 单用户模式启动
sudo /opt/mssql/bin/sqlcmd -S localhost -U SA -Q "DBCC CHECKDB('数据库名') REPAIR_ALLOW_DATA_LOSS"
检查客户端工具与连接
msodbcsql
、sqlcmd
):sudo yum install -y mssql-tools unixODBC-devel
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
source ~/.bash_profile
```。
其他高级排查
getenforce
,若为Enforcing
可临时设为Permissive
测试(生产环境需谨慎)。top
、df -h
命令查看。提示:若以上步骤无法解决,建议参考Microsoft官方文档或联系技术支持。