10bet网址
MySQL 8.0参考手册
相关的文档10bet官方网站 下载本手册
PDF(美国高级主任)- 41.1 mb
PDF (A4)- 41.2 mb
PDF (RPM)- 39.8 mb
HTML下载(TGZ)- 9.5 mb
HTML下载(Zip)- 9.6 mb
HTML下载(RPM)- 8.1 mb
手册页(TGZ)- 260.6 kb
手册页(Zip)- 371.7 kb
信息(Gzip)- 3.9 mb
信息(邮政编码)- 3.9 mb
本手册节选

15.8.3.7 Core文件中不包含缓冲池页面

核心文件记录正在运行的进程的状态和内存映像。由于缓冲池位于主内存中,并且正在运行的进程的内存映像被转储到核心文件中,因此具有大缓冲池的系统在运行时可以产生大的核心文件mysqld死亡的过程。

大的核心文件可能会有很多问题,包括写入它们所需的时间、它们消耗的磁盘空间量以及与传输大文件相关的挑战。

要减小核心文件大小,可以禁用innodb_buffer_pool_in_core_file变量从核心转储中省略缓冲池页面。的innodb_buffer_pool_in_core_file变量是在MySQL 8.0.14中引入的,默认启用。

如果您担心将数据库页转储到可能在组织内外共享的用于调试目的的核心文件中,那么从安全角度来看,排除缓冲池页也是可取的。

请注意

调用时对缓冲池页中数据的访问mysqld进程死亡在某些调试场景中可能是有益的。如果不确定是否包含或排除缓冲池页面,请咨询MySQL支持。

禁用innodb_buffer_pool_in_core_file仅当core_file变量,且操作系统支持MADV_DONTDUMP的非posix扩展madvise ()Linux 3.4及更高版本支持的系统调用。的MADV_DONTDUMP扩展将使指定范围内的页从核心转储中排除。

假设操作系统支持MADV_DONTDUMP扩展,启动服务器——核心文件而且——innodb-buffer-pool-in-core-file =了生成不带缓冲池页面的核心文件的选项。

shell> mysqld——core-file——innodb-buffer-pool-in-core-file=OFF

core_file变量默认为只读且禁用。属性启用——核心文件选项在启动。的innodb_buffer_pool_in_core_file变量是动态的。可以在启动时指定它,也可以在运行时使用声明。

mysql> SET GLOBAL innodb_buffer_pool_in_core_file=OFF;

如果innodb_buffer_pool_in_core_file变量已禁用,但MADV_DONTDUMP操作系统不支持,或者madvise ()如果出现错误,则会向MySQL服务器错误日志中写入警告core_file变量被禁用,以防止写入无意中包含缓冲池页的核心文件。如果只读core_file变量变为禁用,则必须重新启动服务器才能再次启用它。

下表显示了配置和MADV_DONTDUMP支持确定是否生成核心文件以及是否包含缓冲池页的场景。

表15.4 Core File配置场景

core_file变量 innodb_buffer_pool_in_core_file变量 madvise() MADV_DONTDUMP支持 结果
(默认) 与结果无关 与结果无关 不生成Core文件
(默认) 与结果无关 使用缓冲池页面生成核心文件
是的 核心文件在没有缓冲池页面的情况下生成
没有 不生成核心文件,core_file是否禁用,并将警告写入服务器错误日志

控件可以减小核心文件大小innodb_buffer_pool_in_core_file变量的大小取决于缓冲池的大小,但也受InnoDB页面大小。较小的页面大小意味着相同数量的数据需要更多的页面,而更多的页面意味着更多的页面元数据。下表提供了不同页面大小的1GB缓冲池的大小减小示例。

表15.5包含和不包含缓冲池页面的核心文件大小

innodb_page_size设置 包括缓冲池页面(innodb_buffer_pool_in_core_file =对 缓冲池页面排除(innodb_buffer_pool_in_core_file =了
4 kb 2.1 gb 0.9 gb
64 kb 1.7 gb 0.7 gb