我使用 Ubuntu Server 10.04 和 12.04 LTS 在不同的托管公司的专用服务器和 VPS 上进行了多次安装。
我遇到了一个问题,尤其是在迁移到新服务器或执行 apt-get upgrade 后,MySql 运行速度异常缓慢。使用各种工具来查找问题,包括“mysqltuner”、“innotop”和“atop”。以下是“atop”的一个示例
Atop:
MEM | tot 31.4G | free 26.5G | cache 314.4M | buff 88.0M | slab 59.4M |
SWP | tot 1.0G | free 1.0G | | vmcom 23.2G | vmlim 16.7G |
DSK | sdb | busy 100% | read 153 | write 251 | avio 24 ms |
(SWP 和 DSK 线为红色)
MySQLtuner:
[--] Data in MyISAM tables: 37G (Tables: 11)
[--] Data in InnoDB tables: 13G (Tables: 79)
[!!] Total fragmented tables: 14
MySQL 配置:
innodb_buffer_pool_size = 20G
innodb_flush_method = O_DIRECT
innodb_log_file_size = 200M
key_buffer_size = 500M
一项通常需要 30-60 分钟的工作现在要花 4 个小时。如果有人能解释一下为什么会这样,并提出解决问题的建议,我将不胜感激。