暂无图片
mysql数据库定时备份占用大量线程,导致全局锁表,有啥好的解决方法么
我来答
分享
暂无图片 匿名用户
mysql数据库定时备份占用大量线程,导致全局锁表,有啥好的解决方法么

mysql数据库定时备份占用大量线程,导致全局锁表,有啥好的解决方法么

我来答
添加附件
收藏
分享
问题补充
6条回答
默认
最新
孔乙己

是使用的msyqldump 方式备份么, 可以加上参数 --single-transaction  只对innodb 事务表有效

暂无图片 评论
暂无图片 有用 0
Justin.li
2022-07-28
其实是SGRDB-MySQL数据库,进行全量备份用的是SG-RDBBackup
刘贵宾

用的mysqldump?

暂无图片 评论
暂无图片 有用 0
Justin.li
2022-07-28
其实是SGRDB-MySQL数据库,进行全量备份用的是SG-RDBBackup
布衣
暂无图片

mysql备份:xtrabackup 了解一下

https://www.modb.pro/doc/6042

希望对你有所帮助

暂无图片 评论
暂无图片 有用 0
Justin.li
2022-07-28
其实是SGRDB-MySQL数据库,进行全量备份用的是SG-RDBBackup
张sir

1、如果库不太大的话,可以使用mysqldump,都是innodb的表,可以用以下命令:

mysqldump -h127.0.0.1 -uroot -P3306 -p --default-character-set=utf8mb4
--single-transaction --set-gtid-purged=off
--master-data=2 --hex-blob --triggers --routines --events --all-databases >
all_db_with_data.sql

重点是添加--single-transaction参数,可以防止出现锁库的情况。

2、如果库比较大,建议使用xtrabackup,可以实现热备份。

不论mysqldump还是xtrabackup,都要在业务低峰实施,防止未知情况导致数据库堵塞。

暂无图片 评论
暂无图片 有用 0
Justin.li
2022-07-28
其实是SGRDB-MySQL数据库,进行全量备份用的是SG-RDBBackup
王运亮

你要查明所谓"占用大量线程,导致全局锁表"的原因:

  1. 是否多线程备份,谁在持有锁,持有什么锁,谁被阻塞,为什么被阻塞?
  2. 备份时,主库是否有高并发

然后再定解决方案:

  1. 在业务低峰期备份
  2. 设置备份超时时长(xtrabckup);使用特定的备份账号,监控锁信息并及时处理
  3. 在从库备份
暂无图片 评论
暂无图片 有用 0
薛晓刚

在从库上备份

暂无图片 评论
暂无图片 有用 0
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏