DBA05 - mysqldump 实时增量备份、innobackupex

一 、数据备份相关概念

1.1 数据备份的目的

数据被误删除 或 设备损害导致数据丢失 ,用备份文件恢复数据。

1.2 数据备份方式

物理备份:

   –冷备:cp tar

逻辑备份:

    –mysqldum,mysql

物理备份及恢复: 指定备份库和表对应的文件

• 备份操作
– cp -rp /var/lib/mysql/ 数据库 备份目录 / 文件名
– tar -zcvf xxx.tar.gz /var/lib/mysql/ 数据库 /*
• 恢复操作
– cp -rp 备份目录 / 文件名 /var/lib/mysql/
– tar -zxvf xxx.tar.gz -C /var/lib/mysql/ 数据库名

cp -r /var/lib/mysql /opt/mysql.bak
cp -r /var/lib/mysql/bbsdb /opt/bbsdb.bak

rm -rf /var/lib/mysql/bbsdb
cp -r /opt/bbsdb.bak /var/lib/mysql/bbsdb
chown -R mysql:mysql /var/lib/mysql/bbsdb
systemctl restart mysqld

scp  -r /opt/mysql.bak 192.168.4.51:/root/
rm -rf /var/lib/mysql
cp -r /root/mysql.bak /var/lib/mysql
chown -R mysql:mysql /var/lib/mysql
systemctl restart mysqld

逻辑备份及恢复: 在执行备份命令时,根据备份的库表及数据生成对应的sql命令,把sql存储到指定的文件里。

 • 备份操作
– mysqldump 源库名 > 路径 /xxx.sql
• 恢复操作
– mysql 目标库名 < 路径 /xxx.sql

• 源库名的表示
– –all-databases 或 -A   所有库
– 数据库名                      单个库
– 数据库名 表名              单张表
备份多个库
– -B 数据库 1 数据库 2    备份多个库
• 注意事项
– 无论备份还是恢复,都要验证用户及权限


1.3数据备份策略

完全备份:
备份所有数据(一张表的所有数据 一个库的所有数据 一台数据库的所有数据)

备份新产生数据(差异备份 和 增量备份 都备份新产生的数据 )
差异备份:
备份自完全备份后,所有新产生的数据。
增量备份:
备份自上次备份后,所有新产生的数据。

1.4如何对数据做备份 

1.4.1 选择备份策略:
完全备份+差异备份
完全备份+增量备份
1.4.2 数据备份时间 数据服务器访问量少的时候执行备份
1.4.3 数据备份频率 根据数据产生量,决定备份频率
1.4.4 备份文件的命名 库名-日期.sql
1.4.5 备份文件的存储设置 准备独立的存储设备存储备份文件
1.4.6 使用周期性计划任务执行本机脚本

 

需求:每周一  23点备份数据库服务器上db3库下的所有表到系统的/bakdir目录。
完全备份+差异备份

周 23:00 bbsdb 文件名 数据
1  完全     10       1.sql 10
2  差异      5        2.sql 5
3  差异      3        3.sql 8
4  差异      2        4.sql 10
5  差异      1        5.sql 11
6  差异      7        6.sql 18
7  差异      2        7.sql 20

完全备份+增量备份(常用)

周           23:00      bbsdb     文件名  数据

1           完全          10            1.sql     10
2           增量           1             2.sql      1
3           增量           3             3.sql      3
4           增量           7             4.sql      7
5           增量           4             5.sql      4
6           增量           2             6.sql      2
7           增量          10            7.sql     10

+++++++++++++++++++++++++++++

二、完全备份与完全恢复

2.1 完全备份数据

]# mkdir -p /mydatabak
]# mysqldump -uroot -p654321 studb > /mydatabak/studb.sql      //通过mysqldump把数据库的数据通过sql语句的形式导出到文件,这条命令备份的是studb库下的所有表。
]# mysqldump -uroot -p654321 db3 user3 > /mydatabak/db3-user3.sql

]#cat /mydatabak/studb.sql
]#cat /mydatabak/db3-user3.sql

2.2 完全恢复数据

]# mysql -uroot -p654321 studb < /mydatabak/studb.sql  //先建空库,再执行sql导入
]# mysql -uroot -p654321 db3 < /mydatabak/db3-user3.sql

使用source 命令恢复数据
mysql> create database bbsdb;
mysql> use bbsdb;
mysql> source /mydatabak/studb.sql


每周一晚上18:00备份studb库的所有数据到本机的/dbbak目录下,备份文件名称要求如下 日期_库名.sql。

]#vim /root/bakstudb.sh


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值