遇到一个问题innodb_log_buffer_size参数在官方文档上显示最小值为1048576
https://dev.mysql.com/doc/refman/5.7/en/innodb-parameters.html#sysvar_innodb_log_buffer_size
Command-Line Format | --innodb-log-buffer-size=# |
---|---|
System Variable | innodb_log_buffer_size |
Scope | Global |
Dynamic | No |
Type | Integer |
Default Value | 16777216 |
Minimum Value | 1048576 |
Maximum Value | 4294967295 |
但是查看代码显示最小值是256k
storage/innobase/handler/ha_innodb.cc
static MYSQL_SYSVAR_LONG(log_buffer_size, innobase_log_buffer_size,
PLUGIN_VAR_RQCMDARG | PLUGIN_VAR_READONLY,
"The size of the buffer which InnoDB uses to write log to the log files on disk.",
NULL, NULL, 16*1024*1024L, 256*1024L, LONG_MAX, 1024);
启动的时候指定为128k
./bin/mysqld --basedir=/data/mysql_debug --datadir=/data/mysql_debug/data --innodb-log-buffer-size=131072
检查当前 innodb_log_buffer_size参数大小为256k
mysql> show variables like '%log_buffer%';
+------------------------+--------+
| Variable_name | Value |
+------------------------+--------+
| innodb_log_buffer_size | 262144 |
+------------------------+--------+
可以在log_write_up_to函数设置断点,查看 log_sys
(gdb) p *log_sys
$2 = {
...
buf_size = 262144,
max_buf_free = 63488,
...
}
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。