物理备份:

  冷备份:cp tar

逻辑备份:

  mysqldump

mysqldump:是MySQL的客户端命令,通过mysql协议连接至mysql服务器进行备份
-A, --all-databases #备份所有数据库,含create database
-B, --databases db_name…  #指定备份的数据库,包括create database语句
-E, --events:#备份相关的所有event scheduler
-R, --routines:#备份所有存储过程和自定义函数
--triggers:#备份表相关触发器,默认启用,用--skip-triggers,不备份触发器
--default-character-set=utf8 #指定字符集
-d, --no-data #只备份表结构,不备份数据
-t, --no-create-info #只备份数据,不备份表结构,即create table
-n,--no-create-db #不备份create database,可被-A或-B覆盖
-f, --force       #忽略SQL错误,继续执行
--master-data=[#]
#1:所备份的数据之前添加一条记录为change master to语句,非注释,不指定默认为1 ,适合主从复制多机使用
#2:记录为被注释的#change master to语句,适合于单机使用
-F --flush-logs #备份前滚动日志,锁表完成后,执行flush logs命令,生成新的二进制日志文件,建议配合--master-data使用
-x
--single-transaction  使用可重复读的事务隔离级别
--hex-blob 使用十六进制符号转储二进制列,当有包含binary,varbinary blob bit的数据类型的列时使用,避免乱码

  

语法:

mysqldump [OPTIONS] database [tables]   #支持指定数据库和指定多表的备份,但数据库本身定义不备份
mysqldump [OPTIONS] –B DB1 [DB2 DB3...] #支持指定数据库备份,包含数据库本身定义也会备份
mysqldump [OPTIONS] –A [OPTIONS]        #备份所有数据库,包含数据库本身定义也会备份

实战:

InnoDB建议备份策略
  mysqldump –uroot -p –A –F –E –R --triggers --single-transaction --master-data=1 --flush-privileges --default-character-set=utf8 --hex-blob >${BACKUP}/fullbak_${BACKUP_TIME}.sql
MyISAM建议备份策略
mysqldump –uroot -p –A –F –E –R –x --master-data=1 --flush-privileges --triggers --default-character-set=utf8 --hex-blob >${BACKUP}/fullbak_${BACKUP_TIME}.sql

分库备份脚本:

#!/bin/bash
TIME=`date +%F_%H-%M-%S`
DIR=/backup [ -d "$DIR" ] || mkdir $DIR for DB in `mysql -e "show databases" |grep -Ev "^Database|.*schema$"`;do
mysqldump -F --single-transaction --master-data=2 --default-character-set=utf8 -q -B $DB | gzip > ${DIR}/${DB}_${TIME}.sql.gz
done

利用二进制日志还原数据库最新状态

1.开启二进制日志,并独立存放(备份)

2.完全备份并记录二进制位置

3.修改数据库

4.损坏数据

5.还原

  

最新文章

  1. Entity Framework 实体框架的形成之旅--Code First的框架设计(5)
  2. tomcat设置内存大小
  3. 正试图在 os 加载程序锁内执行托管代码。不要尝试在 DllMain 或映像初始化函数内运行托管代码
  4. Visual Studio 2015中的常用调试技巧分享
  5. rpm命令详解
  6. 记录平时code点滴,这次是通过一张充满异样字符的表,对数据表中的每一列进行清理,比double quotation的issue难多了!
  7. iOS状态栏颜色
  8. 彻底卸载 RAD Studio 2009/2010/XE+ 的步骤
  9. ZooKeeper架构设计及其应用
  10. Service IP 原理 - 每天5分钟玩转 Docker 容器技术(137)
  11. java的hello world
  12. 小程序sitemap配置
  13. for 循环分解
  14. win2008R2 bitnami 安装 wamp
  15. PCA 原理
  16. Bootstrap新版里的a标签点击后出现下划线解决办法
  17. 转:Java NIO(2)
  18. aliyun
  19. Python实现图片切割
  20. Change the color of a link in an NSMutableAttributedString

热门文章

  1. Contos6.5卸载自带JDK
  2. Redis Jedis lua脚本
  3. 高德地图——2D转换3D
  4. 超详细kafka教程来啦
  5. Integer-源码
  6. Struts2 的 OGNL
  7. Java单例-双重检查锁
  8. excel中快速删除空白行/区域
  9. Linux 文本相关命令(1)
  10. [源码解析] 深度学习分布式训练框架 horovod (20) --- Elastic Training Operator