MySQL 9.0 发行说明
键缓存可以随时通过更新其参数值来重构。例如
mysql> SET GLOBAL cold_cache.key_buffer_size=4*1024*1024;
如果将 key_buffer_size
或 key_cache_block_size
键缓存组件分配一个与组件当前值不同的值,服务器将销毁缓存的旧结构并根据新值创建一个新的结构。如果缓存包含任何脏块,服务器将在销毁和重新创建缓存之前将它们保存到磁盘。如果更改其他键缓存参数,则不会进行重构。
重构键缓存时,服务器首先将任何脏缓冲区的内容刷新到磁盘。之后,缓存内容将不可用。但是,重构不会阻塞需要使用分配给缓存的索引的查询。相反,服务器将使用本机文件系统缓存直接访问表索引。文件系统缓存不如使用键缓存有效,因此尽管查询会执行,但可以预期会减速。重构缓存后,它将再次可用于缓存分配给它的索引,并且对索引使用文件系统缓存将停止。