mysql两种备份方法总结:mysqldump 和 xtrabackup

 

 

mysqldump工具基本使用mysql

    1. mysqldump [OPTIONS] database [tables…]sql

        还原时库必须存在,不存在须要手动建立bash

    --all-databases: 备份全部库    
    --databases db1 db2 ...: 备份指定的多个库,若是使用此命令,恢复时将不用手动建立库
    --lock-all-tables:请求锁定全部表以后再备份,对MyISAM、InnoDB、Aria作温备
    --lock-table: 对正在备份的表加锁,可是不建议使用,若是其它表被修改,则备份后表与表之间将不一样步
    --single-transaction: 可以对InnoDB存储引擎实现热备;
      启动一个很大的大事物,基于MOCC能够保证在事物内的表版本一致
      自动加锁不须要,再加--lock-table, 能够实现热备
备份代码:
    --events: 备份事件调度器代码
    --routines: 备份存储过程和存储函数
    --triggers:备份触发器
备份时滚动日志:
    --flush-logs: 备份前、请求到锁以后滚动日志;
      方恢复备份时间点之后的内容
复制时的同步位置标记:主从架构中的,主服务器数据。效果至关于标记一个时间点。
    --master-data=[0|1|2]
    0: 不记录
    1:记录为CHANGE MASTER语句
    2:记录为注释的CHANGE MASTER语句




建立专门用于备份的用户
MariaDB > GRANT RELOAD,LOCK TABLES,SUPER,REPLICATION CLIENT ON *.* TO 'backup'@'%' IDENTIFIED BY '123456';    
MariaDB > FLUSH PRIVILEGES;


mysqldump  -ubackup -p123456  --single-transaction  --flush-logs --master-data=2 --databases ttt  > /data/backup.sql
相关文章
相关标签/搜索