zoukankan      html  css  js  c++  java
  • 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 
    
    1. 恢复数据
    /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/
    

    具体参考:
    https://www.cnblogs.com/wshenjin/p/7736131.html
    https://www.cnblogs.com/wshenjin/p/7988212.html

  • 相关阅读:
    jQuery的选择器
    01-jQuery的介绍
    client、offset、scroll系列
    BOM
    定时器
    js中的面向对象
    javascript小练手
    DOM介绍
    关于DOM的事件操作
    伪数组 arguments
  • 原文地址:https://www.cnblogs.com/wshenjin/p/8745786.html
Copyright © 2011-2022 走看看