第二十周-day87-数据库day09-备份恢复

第七章节 备份恢复

1. DBA(运维)在备份恢复需要做哪些工作

1.1 设计备份策略


1.1.1 备份周期

天,周,月

1.1.2 备份方式

全备,增量…

1.1.3 备份什么?

数据
日志

1.1.4 备份类型

冷备,温备,热备

1.1.5 备份工具
mysqldump 
XBK(xtrabackup)
replication
mysqlbinlog

1.2 检查备份

工作中每天必须检查,这是好的习惯
备份文件大小
备份内容头部

1.3 定期恢复演练

正常恢复到测试库
模拟故障恢复演练

1.4 快速、完整故障恢复

1.5升级、迁移的工作

||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||

2. 备份类型(笔试)

2.1 冷备 cold backup

业务停止或数据库关闭,进行备份,业务影响最大

2.2 温备 warm backup

锁表备份,只读备份,阻塞所有的变更操作,只能读。

2.3 热备 hot backup

不锁表备份,只能针对事务型引擎的表(例如:InnoDB),业务的影响最小.

||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||

3. 备份工具介绍

3.1 mysqldump : MDP

优势:

  • 逻辑备份工具,
  • 文本格式,压缩比
  • 备份出来都是SQL,
  • 可读性较强,
  • 便于二次处理.
  • 自带工具

劣势:

  • 相对较慢:从磁盘调数据 —>内存 —>转换成SQL —>xxx.sql

3.2 Xtrabackup(percona) XBK, PBK

官网下载地址-点击
物理备份工具, 备份的数据文件(类似cp),可读性比较差,不便于处理

优势:

  • 备份速度快
  • 支持热备
  • 自带了增量备份功能

劣势:

  • 需要安装
  • 可读性比较差
  • 不便于处理
  • 压缩比低

3.3 选择建议

小于100G :MDP,XBK
100G - 1T : XBK
超过TB级别 : XBK,MDP

FB :  MDP
	PB量级 1PB = 1024TB
一块普通的4TB盘1500RMB,
1PB=256*4TB=256*1500=384000‬ RMB o(* ̄︶ ̄*)o

||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||

4. 备份策略

4.1备份方式:

全备:全库备份,备份所有数据
增量:备份变化的数据
逻辑备份 = mysqldump+binlog
物理备份 = XBK_full+xbk_inc+binlog 或者 xtrabackup_full+binlog

4.2 备份周期:

根据数据量设计备份周期
比如:周日全备,周1-周6增量

||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||

5. mysqldump 逻辑备份工具使用

5.1 客户端通用的参数

-u 
-p 
-h 
-P
-S 

5.2 基础备份参数

5.2.1 -A 全库备份
[root@db01 ~]# mkdir -p /backup
[root@db01 ~]# mysqldump -uroot -p123456 -A > /backup/full.sql
[root@db01 ~]# ll /backup/
total 49816
-rw-r--r-- 1 root root 50828204 Aug 15 17:57 full.sql

5.2.2 -B 单库或多库备份
例子:只备份world和test库

[root@db01 ~]# mysqldump -uroot -p123456 -B world test /backup/db.sql
[root@db01 ~]# ll /backup/
total 98672
-rw-r--r-- 1 root root 50025056 Aug 15 18:02 db.sql
-rw-r--r-- 1 root root 50828204 Aug 15 17:57 full.sql
5.2.3 单表或多表备份
                                          库名   表12
[root@db01 ~]# mysqldump -uroot -p123456 world city country > /backup/tab.sql
[root@db01 ~]# mysqldump -uroot -p123456 world > /backup/a.sql
[root@db01 ~]# ll /backup/
total 98952
-rw-r--r-- 1 root root   244810 Aug 15 18:10 a.sql
-rw-r--r-- 1 root root 50025056 Aug 15 18:02 db.sql
-rw-r--r-- 1 root root 50828204 Aug 15 17:57 full.sql+
-rw-r--r-- 1 root root   217203 Aug 15 18:09 tab.sql

5.3 特殊功能参数

(1) -R --triggers -E 数据库特殊对象备份参数
-R          存储过程函数
--triggers  触发器
-E          事件 
(2) --master-data=2
  1. 以注释形式,记录备份时binlog文件名和position号(截取二进制日志的起点)
  2. 自动锁表功能,加 --single-transaction ,减少锁表.
  3. 自动解锁
(3) --single-transaction 
  快照备份,热备.

Creates a consistent snapshot by dumping all tables in a single transaction. Works ONLY for tables stored in storage engines which support multiversioning (currently only InnoDB does);

(4) --set-gtid-purged=OFF (GTID模式独有的参数)
  作用, 去除gtid所有信息,在日常备份恢复时可加.
  做主从复制应用的时候,不能加此参数.☆.☆.☆.☆.☆
(5) --max-allowed-packet=512M

[root@db01 ~]# mysqldump -uroot -p123 -A --master-data=2 --single-transaction -R -E --triggers --set-gtid-purged=OFF --max-allowed-packet=256M > /backup/full.sql

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值