47. 在 MySQL 服务器运行缓慢的情况下输入什么命令能缓解服务器压力?
这个回答,和上面的回答思路是差不多的,优秀在更有层次感。
1)检查系统的状态
通过操作系统的一些工具检查系统的状态,比如 CPU、内存、交换、磁盘的利用率,根据经验或与系统正常时的状态相比对,有时系统表面上看起来看空闲,这也可能不是一个正常的状态,因为 CPU 可能正等待IO的完成。除此之外,还应观注那些占用系统资源(CPU、内存)的进程。
- 使用 sar 来检查操作系统是否存在 IO 问题。
- 使用 vmstat 监控内存 CPU 资源。
- 磁盘 IO 问题,处理方式:做 raid10 提高性能 。
- 网络问题,telnet 一下 MySQL 对外开放的端口。如果不通的话,看看防火墙是否正确设置了。另外,看看 MySQ L是不是开启了 skip-networking 的选项,如果开启请关闭。
2)检查 MySQL 参数
- max_connect_errors
- connect_timeout
- skip-name-resolve
- slave-net-timeout=seconds
- master-connect-retry
3)检查 MySQL 相关状态值
- 关注连接数
- 关注下系统锁情况
- 关注慢查询(slow query)日志
运维
理解一遍,即使有蛮多不会,也不要担心太多。