一、系统层面基础检查
systemctl status mysql(或mysqld,取决于服务名)确认MySQL服务是否处于active (running)状态;若需更严格的响应验证,可使用mysqladmin -u root -p ping(返回pong表示服务正常)或mysqladmin -u root -p status(显示运行时间、当前连接数、查询频率等基础指标)。/var/log/mysql/error.log或数据目录下的hostname.err文件),定位启动失败、崩溃、警告(如连接超时、磁盘空间不足)或查询异常(如死锁、权限问题)。二、命令行实时监控工具
top命令的轻量级工具,实时显示线程、查询、慢查询、运行时间等信息。安装(Debian/Ubuntu:sudo apt install mytop;CentOS/RHEL:sudo yum install mytop),启动时输入mytop --prompt并输入密码即可进入界面。sudo apt install innotop),启动时输入innotop -u root -p 'password',通过快捷键(q=退出、t=事务、m=内存、s=锁)切换模式。sys库中的视图(如sys.user_summary查看用户级性能、sys.host_summary查看主机级性能、sys.memory_by_thread_by_current_bytes查看线程内存使用),快速定位性能瓶颈。SET GLOBAL performance_schema = ON;)。通过查询performance_schema.threads(线程信息)、performance_schema.events_statements_current(当前执行的SQL语句)等表,获取详细的性能数据。三、第三方可视化监控方案
mysqld_exporter(Prometheus官方MySQL数据采集器),创建专用监控用户(CREATE USER 'exporter'@'localhost' IDENTIFIED BY 'password'; GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'exporter'@'localhost';),启动mysqld_exporter(默认监听9104端口);接着配置Prometheus(prometheus.yml中添加mysqld_exporter job),最后通过Grafana导入MySQL监控模板(如“MySQL Overview”),实现实时指标可视化(如QPS、TPS、连接数、慢查询数)。yum或apt添加Percona仓库,执行sudo yum install pmm-server pmm-client),配置后通过Web界面访问,支持InnoDB、查询性能、复制延迟等多维度监控。mysql.status[Uptime]、mysql.variables[max_connections]),设置触发器实现自动化告警。四、高级诊断与优化工具
wget http://mysqltuner.pl -O mysqltuner.pl && chmod +x mysqltuner.pl),运行(./mysqltuner.pl),根据输出结果调整my.cnf配置文件。sudo apt install percona-toolkit),使用方式(pt-query-digest /var/log/mysql/mysql-slow.log > slow_query_report.txt),帮助定位最耗资源的查询。