在Ubuntu上进行MySQL故障排查可按以下步骤操作:
检查服务状态
sudo systemctl status mysql  # 查看服务是否运行,未运行则启动  
sudo systemctl start mysql  
查看错误日志
sudo tail -f /var/log/mysql/error.log  # 实时查看最新错误信息  
sudo less /var/log/mysql/error.log    # 查看完整日志  
检查配置文件
sudo nano /etc/mysql/my.cnf  # 确认配置正确,如socket路径、端口等  
sudo mysqlcheck --all-databases --auto-repair  # 修复配置错误(部分场景)  
检查端口与防火墙
sudo netstat -tuln | grep 3306  # 确认端口未被占用  
sudo ufw status  # 检查防火墙是否放行3306端口  
sudo ufw allow 3306  # 放行端口(如需)  
检查权限与磁盘空间
sudo chown -R mysql:mysql /var/lib/mysql  # 修复数据目录权限  
sudo df -h  # 确保磁盘空间充足,不足则清理  
高级排查(性能/死锁等)
# 在my.cnf中添加配置后重启服务  
slow_query_log=1  
long_query_time=2  
slow_query_log_file=/var/log/mysql/mysql-slow.log  
使用SHOW PROCESSLIST或EXPLAIN分析慢SQL。SHOW PROCESSLIST查看阻塞进程,用KILL <ID>终止。重启服务与重装(必要时)
sudo systemctl restart mysql  # 重启服务  
sudo apt remove --purge mysql-server  # 重装前卸载  
sudo apt install mysql-server  # 重新安装  
提示:操作前建议备份数据,若无法解决可参考官方文档或社区论坛。