小编Nic*_*ick的帖子

如何使用MySQL将表预加载到INNODB缓冲池中?

我有一个使用MySQL的电子商务应用程序,我希望它更快.当在之前访问过的网站上访问部件#时,部件会快速加载,因为所有必需的数据已经在INNODB缓冲池中.但是,如果之前从未加载过部分#,那么该数据还不在缓冲池中,因此需要从磁盘读取,这很慢.我将INNODB缓冲池设置为2GB,整个数据库只有350MB左右,因此有足够的空间在缓冲池中加载整个数据库.我可以从INNODB统计数据中看到,目前只使用了大约一半的缓冲池.

我发现了预加载数据的引用,也称为"预热"缓冲池,例如在缓冲池中快速预加载Innodb表或mysqldump.azundris.com/archives/70-Innodb-cache-preloading-使用-blackhole.html.该策略基本上涉及强制对每个表进行表扫描,因为MySQL没有用于预加载数据的本机方式.

我不想手动创建一个脚本来列出我的数据库中的每个表,并且必须这样做.如何创建一个脚本,并自动为每个表执行选择,并自动选取一个非索引列以执行表扫描?

mysql innodb warm-up

10
推荐指数
2
解决办法
8173
查看次数

标签 统计

innodb ×1

mysql ×1

warm-up ×1