我正在运行一个mysql服务器.我想以某种方式确保将整个DB加载到ram中,因为我听说它会更快.
这是真的?以及如何将其翻转?
如果您使用InnoDB,那么您可以将innodb_buffer_pool_size设置为至少与数据和索引一样大.然后,当您访问数据时,它将被缓存到内存中,所有后续访问都将通过内存进行.
如果您想预先缓存数据,可以执行一些常见查询或全表/索引扫描,以强制它将所有数据加载到内存中.
mysqld有一个init-file选项,它可以让服务器在启动时自动执行一些命令,你可以在其中包含要执行的预缓存查询.
请记住,您不希望内存不足,因此请小心设置innodb_buffer_pool_size太大.