mysql gr备份与恢复_PXC备份方式总结

记录一下。

1、mysqldump数据导出

关于GTID:

GTID是MySQL5.6以后,加入了全局事务 ID (GTID) 来强化数据库的主备一致性,故障恢复,以及容错能力。

A global transaction identifier (GTID) is a unique identifier created and associated with each transaction committed on the server of origin (master).

所以可能是因为在一个数据库里面唯一,但是当导入其他的库就有可能重复。所有会有一个提醒:

Warning: A partial dump from a server that has GTIDs will by default include the GTIDs of all transactions, even those that changed suppressed parts of the database.

If you don't want to restore GTIDs, pass --set-gtid-purged=OFF. To make a complete dump, pass --all-databases --triggers --routines --events.

如果进行mysqldump时,没有使用--set-gtid-purged=OFF参数,备份出来的SQL就会出现SET @@GLOBAL.GTID_PURGED='4e53cb9a-fa5e-ee17-6889-8815f2fe1df6:1-54398';的情况,

1-54398这个的区间是主库中当前所完成的所有事务号。这条语句在备份被恢复的时候,起到的作用是:不再从主库同步1-54398 这个范围内的事务了。

secure_file_priv :

这个参数用来限制数据导入和导出操作的效果,例如执行LOAD DATA、SELECT ... INTO OUTFILE语句和LOAD_FILE()函数。这些操作需要用户具有FILE权限。

secure_file_priv参数说明:

如果这个参数为空,secure_file_priv="" ,数据导入导出不做目录限制;

如果这个参数设为一个目录名,secure_file_priv="/data/backup/",MySQL服务只允许在这个目录中执行文件的导入和导出操作,这个目录必须存在,MySQL服务不会创建它;

如果这个参数为,secure_file_priv="NULL",MySQL服务会禁止导入和导出操作。这个参数在MySQL 5.7.6版本引入;

关于pxc_strict_mode:

pxc_strict_mode=ENFORCING

mysqldump 需要加入 --skip_add_locks --skip-lock-tables 这两个参数

1) 导出表结构

# pxc_strict_mode=ENFORCING

/usr/bin/mysqldump -uroot -p*** -S /tmp/pxc3306.sock --set-gtid-purged=OFF --skip_add_locks --skip-lock-tables --databases -d test_db0 > test_db0.sql

# pxc_strict_mode=DISABLED

/usr/bin/mysqldump -uroot -p*** -S /tmp/pxc3306.sock --set-gtid-purged=OFF --databases -d test_db0 > test_db0.sql

2) 导出数据

# pxc_strict_mode=ENFORCING

/usr/bin/mysqldump -uroot -p*** -S /tmp/pxc3306.sock --set-gtid-purged=OFF --skip_add_locks --skip-lock-tables --skip-tz-utc -T . test_db0

# pxc_strict_mode=DISABLED

/usr/bin/mysqldump -uroot -p*** -S /tmp/pxc3306.sock --set-gtid-purged=OFF --skip-tz-utc -T . test_db0

3) 恢复库和表结构

/usr/bin/mysql -uroot -p*** -S /tmp/pxc3306.sock < test_db0.sql

恢复数据

/usr/bin/mysqlimport -uroot -p*** -S /tmp/pxc3306.sock --local test_db0 `find -name "*.txt"`

2、innobackupex备份方式

和普通的MySQL的使用方式相同,不做赘述

备份时加入 --gralera-info 参数,apply log时会生成集群ID信息用于恢复

备份:

/usr/bin/innobackupex --defaults-file=/etc/pxc3306.cnf --user=root --password=*** --socket=/tmp/pxc3306.sock --gralera-info ./

恢复:

/usr/bin/innobackupex --apply-log ./2018-04-08_16-11-06/

为MySQL选择合适的备份方式

数据库的备份是极其重要的事情.如果没有备份,遇到下列情况就会抓狂: UPDATE or DELETE whitout where… table was DROPPed accidentally… IN ...

Redis学习——Redis持久化之AOF备份方式保存数据

新技术的出现一定是在老技术的基础之上,并且完善了老技术的某一些不足的地方,新技术和老技术就如同JAVA中的继承关系.子类(新技术)比父类(老技术)更加的强大! 在前面介绍了Redis学习--Redis ...

为MySQL选择合适的备份方式&lbrack;转&rsqb;

原文链接:http://nettedfish.sinaapp.com/blog/2013/05/31/choose-suitable-backup-strategy-for-mysql/ 数据库的备份 ...

MySQL常用的备份方式与备份工具简介

一.MySQL备份方式与备份类型 1.备份的必要性 再生产环境中,为了防止硬件故障.软件故障.自然灾害.误操作等各种原因导致的数据库数据丢失后能恢复到事故之前的状态,我们需要对数据库进行备份和恢复操作 ...

选择适用才最好 盘点MySQL备份方式

我们要备份什么? 一般情况下, 我们需要备份的数据分为以下几种 数据 二进制日志, InnoDB事务日志 代码(存储过程.存储函数.触发器.事件调度器) 服务器配置文件 备份工具 这里我们列举出常用的 ...

redis笔记之两种持久化备份方式&lpar;RDB &amp&semi; AOF&rpar;

Redis支持的两种持久化备份方式(RDB & AOF) redis支持两种持久化方式,一种是RDB,一种是AOF. RDB是根据指定的规则定时将内存中的数据备份到硬盘上,AOF是在每次执行命 ...

Linux下SVN的三种备份方式

原文链接:http://blog.csdn.net/windone0109/article/details/4040772 (本文例子基于FreeBSD/Linux实现,windows环境请自己做出相 ...

oracle的备份方式

一.完全备份 exp 用户/密码@库名 file=存储位置 二.RMAN https://www.cnblogs.com/Latiny/p/6920428.html RMAN在数据库服务器的帮助下实现 ...

mysql多种备份方式比较及实现

Mysql备份 MySQL的备份和还原: 备份:存放为副本-->数据备份 RAID1,RAID10:保证硬件损坏而不会业务中止,不能保证逻辑上的损害 例如:DROP TABLE mydb.tb1 ...

随机推荐

linux常用命令总结

du -sh * 当前目录下所有文件占用空间大小,df  空间占用 top 资源使用情况 M 根据驻留内存大小进行排序 tail 1.tail -f filename说明:监视filename文件的尾 ...

【转】PHP中require和include路径问题总结

1 绝对路径.相对路径和未确定路径 2. 相对路径: 3. 绝对路径 4. 未确定路径 5. 解决方案 1 绝对路径.相对路径和未确定路径 相对路径 相对路径指以.开头的路径,例如 ./a/a.php ...

Qt中暂停线程的执行(利用QMutex,超级简单明了)

在线程中定义一个信号量: QMutex pause;把run()函数中循环执行的部分用信号量pause锁住: void run() { while(1) { pause.lock(); //循环执行的 ...

IntelliJ Idea 常用快捷键列表(转)

IntelliJ Idea 常用快捷键列表   Alt+回车 导入包,自动修正Ctrl+N   查找类Ctrl+Shift+N 查找文件Ctrl+Alt+L  格式化代码 Ctrl+Alt+O 优化导 ...

Python魔法方法总结及注意事项

1.何为魔法方法: Python中,一定要区分开函数和方法的含义: 1.函数:类外部定义的,跟类没有直接关系的:形式: def func(*argv): 2.方法:class内部定义的函数(对象的方法 ...

学习css3中的动画

css animations 主要有两块构成,那么是哪两块呢? keyframes : 定义了什么阶段展示什么样的动画 animation 属性 :把动画挂载到一个具体的dom上,并且定义如何动起来: ...

关于vim的折叠

参考: http://www.cnblogs.com/fakis/archive/2011/04/14/2016213.html 和 这篇文章: https://blog.csdn.net/benda ...

Java分布式锁

分布式锁简述 在单机时代,虽然不存在分布式锁,但也会面临资源互斥的情况,只不过在单机的情况下,如果有多个线程要同时访问某个共享资源的时候,我们可以采用线程间加锁的机制,即当某个线程获取到这个资源后,就 ...

&lbrack;转&rsqb;mmap和madvise的使用

1.    madvise的简介            madvise可以设置内存的分配方式或者说是分配的细节方式.具体参见linux man madvise. #include

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值