简短答案

简短答案

服务器基础设施:
我有一个运行 nginx + wordpress + mysql 的 centos 服务器。

问题:
mysql 频繁关闭并且 wordpress 显示“无法连接到数据库”警报。

发现问题:
看来问题是由于 innodb_buffer_pool 大小造成的。

分析:
在检查日志并阅读有关缓冲池的信息后,我了解到如果我使用混合存储引擎(myISAM 和 innodb)。事实上,我确实一直在使用这两种引擎。

问题:

  1. 如何查找mysql缓冲区在工作过程中是否相互竞争?
  2. 如果可以使用某种方法查找,可以通过发送电子邮件/短信来实现自动查找吗?

答案1

简短答案

  • MyISAM 仅缓存来自.MYI文件的索引。
  • InnoDB缓存数据和索引页(InnoDB Page为16K)

除非 mysqld 之外存在内存分配问题(通常是由于存在大量 DB 连接,其中每个 DB 连接都为其自己的会话分配大量内存),否则键缓冲区和 InnoDB 缓冲池不可能竞争

较长的答案

请参阅我的旧帖子

相关内容