• ADADADADAD

    MYSQL innodb buffer 状态数据的保存和载入[ mysql数据库 ]

    mysql数据库 时间:2024-12-03 12:12:48

    作者:文/会员上传

    简介:

    本文参考官方手册
    原创转载请注明出处


    版本:MYSQL 5.7

    当数据库重启后,buffer中的数据需要重新预热,所谓预热就是等待常用数据通过用户调用SQL语句从磁盘载入到内存,
    这个过

    以下为本文的正文内容,内容仅供参考!本站为公益性网站,复制本文以及下载DOC文档全部免费。

    本文参考官方手册
    原创转载请注明出处


    版本:MYSQL 5.7

    当数据库重启后,buffer中的数据需要重新预热,所谓预热就是等待常用数据通过用户调用SQL语句从磁盘载入到内存,
    这个过程ORACLE中叫做物理读取,对于较大的平台这个预热过程往往需要较大的代价,典型的就是第一次运行一个select
    语句很慢,过后再次执行就很快了。
    对于这种情况innodb默认在关闭和启动的时候都会保存和加载状态数据,由参数
    innodb_buffer_pool_load_at_startup

    innodb_buffer_pool_dump_at_shutdown
    进行控制,默认都是on的
    其保存比率由参数控制
    innodb_buffer_pool_dump_pct
    默认为25%
    而其文件由参数
    innodb_buffer_pool_filename控制默认为:
    mysql> show variables like '%innodb_buffer_pool_filename%';
    +-----------------------------+----------------+
    | Variable_name| Value |
    +-----------------------------+----------------+
    | innodb_buffer_pool_filename | ib_buffer_pool |
    +-----------------------------+----------------+
    这个文件在innodb数据文件目录下,其中保存的是space_no,page_no形式如下:
    545,213
    545,212
    545,211
    545,210
    545,209
    545,208
    545,207
    ......


    在线情况下可以使用如下语句:
    SET GLOBAL innodb_buffer_pool_dump_now=ON;
    SET GLOBAL innodb_buffer_pool_load_now=ON;
    进行dump和load,并且可以通过
    SHOW STATUS LIKE 'Innodb_buffer_pool_dump_status';

    SHOW STATUS LIKE 'Innodb_buffer_pool_load_status';
    查看dump和load的情况

    作者微信:


    MYSQL innodb buffer 状态数据的保存和载入.docx

    将本文的Word文档下载到电脑

    推荐度:

    下载
    热门标签: mysql状态载入