在CentOS中的MySQL备份与恢复

MySQL备份与恢复

1.掌握数据库备份类型与方法
2.掌握MySQL完全备份恢复操作
3.掌握MySQL增量备份恢复操作


简介
随着自动化办公与电子商务的不断发展,企业对于信息系统的依赖性越来越高,而数据库在信息系统中担任着非常重要的角色,尤其一些对数据可靠性要求非常高行业,如银行,证券,电信等,如果发生意外宕机或数据丢失,其损失是非常严重的。为此数据库管理员必须针对具体的业务要求制定详细的数据库备份与灾难恢复的策略,并通过模拟故障对每种可能的情况进行严格的测试,从而保证数据的可靠性。
上一章我们已经学习了MySQL数据库的安装与基本操作,本章我们就以MySQL为例来学习数据库备份与恢复的相关知识,并掌握MySQL常见的备份与恢复的方法。

重点
掌握MySQL完全备份恢复操作
掌握MySQL增量备份恢复操作

数据库备份概念
备份的主要目的是灾难恢复,备份还可以测试应用,回滚数据修改,查询历史数据,审计等。之前已经学习过如何安装MySQL,本小节我们将从生产运维的角度了解备份恢复的分类与方法。

1.数据备份的重要性
在企业数据的价值至关重要,数据保障了企业业务的正常运行。因此,数据的安全性及数据的可靠性是运维的重中之重,任何数据的丢失都可能对企业产生严重的后果。通常情况下造成数据丢失的原因有如下几种:
程序错误
认为操作错误
运算错误
磁盘故障
灾难(如火灾,地震)和盗窃
2.数据库备份类型
冷备份:在数据库关闭状态下进行备份操作。
热备份:在数据库处于运行状态时进行备份操作,该备份方法依赖数据库 的日志文件。
温备份:数据库锁定表格(不可写入但可读)的状态下进行备份操作。
逻辑备份:对数据库或者表的逻辑结构进行备份
通过物理备份:硬盘配置RAID5,将mysql数据保存在RAID5分区上
完全备份:第一次配置数据库备份使用,备份速度慢,占用磁盘空间大
差异备份:做完完整备份后使用差异备份,差异备份之备份最新数据
增量备份:完整备份后使用增量,备份增量后修改的数据,备份速度快,占用空间小


MySQL数据库备份恢复
1.mysql数据库冷备份
1)停止mysql数据库服务
[root@Centos ~]# systemctl stop mysql
2)备份mysql数据库服务
[root@Centos ~]# tar zcf ./backup_mysql_$(date +%F).gz
usr/local/mysql/data/
在这里插入图片描述3)进入data目录删除备份和恢复
[root@Centos ~]# tar zxvf backup_mysql_2020-10-05.gz -C /
usr/local/mysql/data/
在这里插入图片描述
2.,mysqldump备份恢复数据库中的表
1)备份benet数据库中的student表
在这里插入图片描述2)恢复备份student表到benet数据库中
[root@Centos ~]# mysql -uroot -ppwd@123 benet < .
/benet_student_2020-10-05.sql
在这里插入图片描述
3,备份多个数据库或者备份所有数据库
1)备份多个数据库数据,备份benet和accp数据库
[root@Centos ~]# mysqldump -uroot -ppwd@123 --database benet accp
> ./backuo_database_accp_benet.sql
在这里插入图片描述2)恢复误删除多个数据库数据
[root@Centos ~]# mysql -uroot -ppwd@123 < .
/backuo_database_accp_benet.sql
在这里插入图片描述

3.备份所有数据库数据
[root@Centos ~]# mysqldump -uroot -pwd@123 --all -databases > b
acko_all_database.sql
在这里插入图片描述5. 二进制日志备份恢复数据
1)更新二进制日志
[root@Centos ~]# mysqladmin -uroot -ppwd@123 flush-log
在这里插入图片描述2)查看二进制文件
[root@Centos ~]# mysqlbinlog mysql-bin.000007
在这里插入图片描述
3)从备份的二进制日志恢复数据
[root@Centos ~]# mysqlbinlog --no-defaults ./mysql-bin.000007 | mysql -
uroot -ppwd@123
在这里插入图片描述
5.从二进制指定的ID或者时间恢复误删除数据
1)从二进制日志ID开始和结束范围恢复数据
[root@Centos ~]# mysqlbinlog --start-position=‘176’ --start-position=‘389’
./mysql-bin.usr | mysql -uroot -ppwd@123
在这里插入图片描述
2)从二进制日志起始时间和结束时间恢复数据
[root@Centos~]#mysqlbinlog --start-datetime=‘2020-10-06 0:32:02’ –
stop-datetime=‘2020-10-06 0:32:21’ ./mysql-bin.000008 | mysql -uroot -p
pwd@123
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值