数据库查询比较慢,CPU不高,但磁盘I/O特别高(几十M/S)?
该情况通常是由于mysql缓存太小引起的,可以通过查看innodb_buffer_pool_size变量的值来定位:
MariaDB [(none)]> show variables like 'innodb_buffer_pool_size';
+-------------------------+------------+
| Variable_name | Value |
+-------------------------+------------+
| innodb_buffer_pool_size | 1073741824 |
+-------------------------+------------+
innodb_buffer_pool_size默认的值为16M,如果这个值远小于数据库数据大小时,就会出现以上情况。只要把这个值改成和数据库大小差不多大就能立马缓解该问题。
MariaDB [(none)]> show global innodb_buffer_pool_size = 1*1024*1024*1024;
关联文章阅读:
https://www.cnblogs.com/fuyuteng/p/10524015.html
https://www.cnblogs.com/wanbin/p/9530833.html













网友评论