一、原生命令行工具:快速查看基础性能
SHOW STATUS 可查看MySQL服务器运行状态(如连接数、查询次数、缓存命中率等),SHOW VARIABLES 用于查看配置参数(如max_connections、innodb_buffer_pool_size)。结合两者可分析服务器负载情况,例如通过SHOW STATUS LIKE 'Threads_connected'查看当前连接数,对比max_connections判断是否需要扩容。SHOW FULL PROCESSLIST查看完整SQL语句,快速定位长时间运行的慢查询(如运行时间超过long_query_time的查询)。mysqladmin -u root -p status可快速获取服务器状态摘要(如连接数、查询每秒、缓冲池命中率);mysqladmin extended-status可查看更详细的计数器信息,适合自动化监控脚本。二、第三方命令行工具:深入分析性能瓶颈
innodb_buffer_pool_size、query_cache_size等参数)。安装:sudo apt install mysqltuner,运行:mysqltuner --user root --ask-pass,输出结果包含内存使用、存储引擎配置、查询缓存等方面的建议。pt-query-digest(分析慢查询日志,找出最耗时的查询)、pt-mysql-summary(汇总MySQL服务器状态)、pt-table-checksum(检查主从数据一致性)等工具。安装:下载tar包解压后,将bin/目录下的工具复制到/usr/local/bin/即可使用。cpan或手动编译安装(sudo cpan App::Innotop),运行:innotop -u root -p your_password。三、可视化监控方案:实时展示与报警
mysqld_exporter并配置--config.my-cnf指向MySQL配置文件(如~/.my.cnf),通过systemd启动服务;sudo apt install netdata,访问http://server_ip:19999即可查看实时监控面板。四、日志管理与分析:排查历史问题
long_query_time(默认10秒)的查询,用于分析性能瓶颈。开启方法:在/etc/mysql/mysql.conf.d/mysqld.cnf中添加slow_query_log = 1、slow_query_log_file = /var/log/mysql/slow.log、long_query_time = 2(单位:秒),重启MySQL生效。使用pt-query-digest分析慢查询日志:pt-query-digest /var/log/mysql/slow.log,输出最耗时的查询及优化建议。/var/log/mysql/error.log。使用tail -f /var/log/mysql/error.log实时查看,或通过grep过滤特定错误(如grep "Deadlock" /var/log/mysql/error.log)。