MariaDB在Linux故障排查步骤如下:
-
检查服务状态
sudo systemctl status mariadb若未运行,尝试启动并查看错误信息:
sudo systemctl start mariadb sudo journalctl -u mariadb -xe # 查看详细日志 -
分析日志文件
- 错误日志:默认路径
/var/log/mariadb/mariadb.log或/var/log/mysql/error.log,用tail/grep查看关键错误。 - 慢查询/查询日志:启用后分析性能问题(需在配置文件中设置)。
- 错误日志:默认路径
-
验证配置文件
检查/etc/my.cnf或/etc/mysql/my.cnf,重点关注port、bind-address、datadir等配置是否正确。 -
排查权限与文件问题
- 确保数据目录(如
/var/lib/mysql)属主为mysql用户:sudo chown -R mysql:mysql /var/lib/mysql sudo chmod -R 755 /var/lib/mysql - 修复损坏表:用
CHECK TABLE和REPAIR TABLE命令,或从备份恢复。
- 确保数据目录(如
-
检查系统资源与网络
- 用
free -h/df -h确认内存、磁盘空间充足。 - 用
netstat/telnet测试端口(默认3306)是否开放,防火墙是否拦截。
- 用
-
使用监控工具
- 系统层面:
top/htop监控CPU/内存,iostat监控磁盘I/O。 - 数据库层面:启用慢查询日志或使用
SHOW STATUS分析性能。
- 系统层面:
-
处理特殊场景
- 端口冲突:修改配置文件中端口或停止冲突服务。
- 版本过旧:用包管理器升级MariaDB并重启。
- 初始化问题:新安装时执行
mysql_install_db生成权限表。
参考来源: