mysql 数据库缓存调优之解决The total number of locks exceeds the lock table size错误
环境:mysql5.6.2 主从同步(备注:需操作主库和从库)一、InnoDB表执行大批量数据的更新,插入,删除操作时会出现这个问题,需要调整InnoDB全局的innodb_buffer_pool_size的值来解决这个问题,并且重启mysql服务。遇到的问题:mysql报错如下:The total number of locks exceeds the lock table size错误二、解决
环境:
mysql5.6.2 主从同步(备注:需操作主库和从库)
一、InnoDB表执行大批量数据的更新,插入,删除操作时会出现这个问题,需要调整InnoDB全局的innodb_buffer_pool_size的值来解决这个问题,并且重启mysql服务。
遇到的问题:
mysql报错如下:
|
二、解决办法
2.1、登录主库查看buffer_pool_size大小
|
2.2、调优方法
#关闭数据库(备注:主从同步状态正常的情况下关闭主库)
|
#修改配置文件 (备注:在主库上面修改配置文件)
|
#启动数据库 (备注:在主库上面操作)
|
#再登录数据库检查是否修改成功 (备注:在主库上面操作)
|
#备注:从库也要调优相同参数,否则会导致数据库主从不同步
#关闭数据库(备注:主从同步状态正常的情况下关闭从库)
|
#修改配置文件 (备注:在从库上面修改配置文件)
[root@a2 mysql]# vi my.cnf
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
#[client]
#port = 3306
#socket = /tmp/mysql.sock
[mysqld_safe]
err-log=/var/log/mysqld.log
pid-file=/var/lib/mysql/mysqld.pid
default-character-set = utf8
[mysqld]
port = 3306
socket = /tmp/mysql.sock
#innodb_buffer_pool_size=8MB
innodb_buffer_pool_size=2GB #把8M修改成2G
basedir = /roobo/server/mysql
datadir = /roobo/mysqldata/database
pid-file = /var/lib/mysql/mysql.pid
character_set_server = utf8
server-id = 2
read_only = 1
#启动数据库 (备注:在从主库上面操作)
|
#再登录数据库检查是否修改成功 (备注:在从库上面操作)
|
#再登录从库,查看主从同步情况 (备注:在从库上面操作)
|
更多推荐
所有评论(0)