加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

解决MySQL 使用xtrabackup备份失败方法浅析

发布时间:2023-09-06 14:22:49 所属栏目:MySql教程 来源:
导读:本文主要给大家介绍解决MySQL使用xtrabackup备份失败方法简析,文章内容都是笔者用心摘选和编辑的,具有一定的针对性,对大家的参考意义还是比较大的,下面跟笔者一起了解下主题内容吧。

收到报警,某个端口备份
本文主要给大家介绍解决MySQL使用xtrabackup备份失败方法简析,文章内容都是笔者用心摘选和编辑的,具有一定的针对性,对大家的参考意义还是比较大的,下面跟笔者一起了解下主题内容吧。
 
收到报警,某个端口备份失败,查看备份日志如下,显示有DDL操作导致的备份中断,查看当时的二进制日志,当时执行了一条添加字段的sql语句。目前只能重新执行备份,并修改备份时间,避免再发生类似情况。
 
MySQL:5.7.11
 
xtrabackup:2.4.5
 
查找到官方修复bug的情况:
 
Running DDL statements on Percona Server 5.7 during the backup process could in some cases lead to failure while preparing the backup. Bug fixed #1555626.
 
MySQL 5.7 can sometimes skip redo logging when creating an index. If such ALTER TABLE is being issued during the backup, the backup would be inconsistent. xtrabackup will now abort with error message if such ALTER TABLEhas been done during the backup. Bug fixed #1582345.
 
所以说这种情况是正常的,应尽量避免在备份时执行这些sql
 
备份日志:
 
解决MySQL 使用xtrabackup备份失败方法简析
 
InnoDB: Last flushed lsn: 340748764928 load_index lsn 340748904772
 
# 一个DDL操作已经执行(未记录redo日志)。影响到的行可能未落地,PXB不能确保备份的一致性,请重试
 
[FATAL] InnoDB: An optimized(without redo logging) DDLoperation has been performed. All modified pages may not have been flushed to the disk yet.
 
    PXB will not be able take a consistent backup. Retry the backup operation
 
    # 断言失败
 
2017-06-01 08:43:19 0x7f396ee27700  InnoDB: Assertion failure in thread 139884650198784 in file ut0ut.cc line 916
 
# 故意生成一个内存陷阱,使备份中断
 
InnoDB: We intentionally generate a memory trap.
 
InnoDB: Submit a detailed bug report to http://bugs.mysql.com.
 
InnoDB: If you get repeated assertion failures or crashes, even
 
InnoDB: immediately after the mysqld startup, there may be
 
InnoDB: corruption in the InnoDB tablespace. Please refer to
 
InnoDB: http://dev.mysql.com/doc/refman/5.7/en/forcing-innodb-recovery.html
 
InnoDB: about forcing recovery.
 
00:43:19 UTC - xtrabackup got signal 6 ;
 
This could be because you hit a bug or data is corrupted.
 
This error can also be caused by malfunctioning hardware.
 
Attempting to collect some information that could help diagnose the problem.
 
As this is a crash and something is definitely wrong, the information
 
collection process might fail.
 
Thread pointer: 0x0
 
Attempting backtrace. You can use the following information to find out
 
where mysqld died. If you see no messages after this, something went
 
terribly wrong...
 
stack_bottom = 0 thread_stack 0x10000
 
/usr/local/xtrabackup/bin/innobackupex(my_print_stacktrace+0x35)[0xd55c45]
 
/usr/local/xtrabackup/bin/innobackupex(handle_fatal_signal+0x273)[0xb0d5a3]
 
/lib64/libpthread.so.0[0x36ac20f710]
 
/lib64/libc.so.6(gsignal+0x35)[0x36abe32625]
 
/lib64/libc.so.6(abort+0x175)[0x36abe33e05]
 
/usr/local/xtrabackup/bin/innobackupex[0x7bfbe5]
 
/usr/local/xtrabackup/bin/innobackupex(_ZN2ib5fatalD1Ev+0xb3)[0x837743]
 
/usr/local/xtrabackup/bin/innobackupex[0x8af4a1]
 
/usr/local/xtrabackup/bin/innobackupex(_Z19recv_parse_log_recsm7store_tb+0x4df)[0x8b20ef]
 
/usr/local/xtrabackup/bin/innobackupex[0x763b60]
 
/usr/local/xtrabackup/bin/innobackupex[0x764176]
 
/usr/local/xtrabackup/bin/innobackupex[0x764523]
 
/lib64/libpthread.so.0[0x36ac2079d1]
 
/lib64/libc.so.6(clone+0x6d)[0x36abee88fd]
 
Please report a bug at https://bugs.launchpad.net/percona-xtrabackup
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章