【赵渝强老师】执行MySQL的冷备份与冷恢复

本文涉及的产品
云原生数据库 PolarDB 分布式版,标准版 2核8GB
RDS PostgreSQL Serverless,0.5-4RCU 50GB 3个月
推荐场景:
对影评进行热评分析
云数据库 RDS SQL Server,基础系列 2核4GB
简介: 冷备份是在数据库关闭状态下进行的备份,速度快且恢复简单,但备份期间数据库不可用。本文通过一个MySQL数据库的示例,详细演示了冷备份和恢复的步骤,包括备份文件、模拟错误、恢复数据等过程。

b096.png

冷备份是指发生在数据库已经正常关闭的情况下进行的备份。由于此时数据库已经关闭,通过冷备份可以将数据库的关键性文件拷贝到另外存储位置。冷备份因为只是拷贝文件,因此备份的速度非常快。在执行恢复时,只需将文件再拷贝回去就可以很容易恢复到某个时间点上。冷备份的最大缺点在于在冷备份过程中,数据库必须是关闭状态,不能提供外部的访问。

   

在了解到了基础的知识以后,这里将通过一个简单的示例来演示如何操作MySQL数据库完成数据的冷备份与冷恢复。

   

视频讲解如下;


提示:下面的示例演示的是MySQL的冷备份与恢复,并以员工表(emp)中的员工数据为例。


(1)确定员工表的数据条数。

mysql> select count(*) from emp;
                    
# 输出的信息如下:
+----------+
| count(*) |
+----------+
|       14 |
+----------+


(2)退出MySQL命令行工具,再执行下面的语句停止MySQL

mysqladmin -uroot -pWelcome_1 shutdown


(3)创建MySQL备份目录

mkdir -p /databackup/cold/


(4)使用tar命令执行冷备份将整个MySQL的目录进行备份。

cd /usr/local
tar -cvzf /databackup/cold/mysql.tar.gz mysql/

# 输出的信息如下:
mysql/
mysql/bin/
mysql/bin/mysql
......
mysql/lib/
mysql/lib/libmysqlclient.a
mysql/lib/libmysqlservices.a
mysql/lib/pkgconfig/
......
mysql/data/demo1/
......
mysql/data/demo1/emp.ibd
mysql/data/demo1/indextable1.ibd
......
mysql/data/binlog.000017
mysql/data/binlog.000011
mysql/data/binlog.000013

提示:从tar命令输出的信息可以看出,该命令将整个mysql目录进行了打包并将打包后的文件放到了/databackup/cold/目录下。


(5)模拟数据库出现错误,以测试冷备的数据是否能够进行恢复。

rm -rf /usr/local/mysql/


(6)重新启动MySQL,会发现MySQL服务可以正常启动。

systemctl start mysqld

# 输出的信息如下:
mysqld.service - LSB: start and stop MySQL
 Loaded: loaded (/etc/rc.d/init.d/mysqld; bad; vendor preset: disabled)
 Active: active (exited) since Sat 2022-02-26 22:30:47 CST;
   Docs: man:systemd-sysv-generator(8)


(7)尝试登录MySQL。

mysql -uroot -pWelcome_1

# 将出现下面的错误信息:
-bash: /usr/local/mysql/bin/mysql: No such file or directory


(8)停止MySQL服务,并尝试使用文件/databackup/cold/mysql.tar.gz来进行恢复。

systemctl stop mysqld
tar -zxvf /databackup/cold/mysql.tar.gz -C /usr/local/
systemctl start mysqld


(9)登录MySQL,检查数据是否恢复。

mysql -uroot -pWelcome_1
mysql> use demo1;
mysql> select count(*) from emp;

# 输出的信息如下:
+----------+
| count(*) |
+----------+
|       14 |
+----------+



相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
16小时前
|
存储 Oracle 关系型数据库
【赵渝强老师】执行Oracle的冷备份与冷恢复
本文介绍了数据库的冷备份与冷恢复技术,包括其定义、优缺点及操作步骤。通过Oracle RMAN工具,详细演示了如何执行冷备份和冷恢复,确保数据库在关闭状态下完成备份,并能快速恢复到指定时间点。文中还提供了具体的操作示例和代码,帮助读者更好地理解和实践。
|
3月前
|
存储 关系型数据库 MySQL
mysql物理备份学废了吗
mysql物理备份学废了吗
29 0
|
5月前
|
SQL 关系型数据库 MySQL
MySQL进阶 - 备份与恢复
MySQL进阶 - 备份与恢复
33 0
|
SQL 关系型数据库 MySQL
删库,误清数据怎么办?MySQL数据恢复指南
相信很多同学在面对线上数据库时都畏手畏脚,即使这样都难免手滑,一不小心手一抖就将数据或者是表,库删除。当然一些注重规范的公司,不会给开发人员删除表或者是库的权限,但误删数据是常有的事,那么这种情况发生,我们改怎么办呢?跑路?哈哈,当然删库跑路是句玩笑话,本文就为大家介绍一些数据误删除恢复的办法。
2674 0
|
SQL 关系型数据库 MySQL
MySQL的备份和恢复案例
当发生掉电或硬件故障,MySQL重新启动时会自动进行Crash Recovery,从日志文件中读取pending的信息,rollback uncommit同时把已经提交的交易flush到datafile,这些信息可以从MySQL的错误日志中看到,这里我用kill -9模拟宕机
155 0
|
存储 SQL 前端开发
【MySQL技术内幕】8.1-备份与恢复概述和冷备
【MySQL技术内幕】8.1-备份与恢复概述和冷备
159 0
|
存储 安全 关系型数据库
【MySQL技术内幕】8.4-二进制日志备份与恢复
【MySQL技术内幕】8.4-二进制日志备份与恢复
162 0
|
存储 关系型数据库 MySQL
入门MySQL——备份与恢复
前面几篇文章为大家介绍了 MySQL 各种语句语法的用法及用户权限相关知识。本篇文章将主要讲解 MySQL 数据库数据备份与恢复相关知识,主要聚焦于逻辑备份,介绍mysqldump工具的使用以及恢复方法。
148 0
|
SQL 监控 MySQL
Mysql 备份与恢复(学习笔记六)
https://blog.csdn.net/flyfish778/article/details/52451738 https://www.cnblogs.com/tongxiaoda/p/8507688.html Mysqldump 用来生成MySQL的逻辑备份文件,其文件内容就是构成数据库对象和数据内容的可重复执行的SQL语句。
1204 0
下一篇
无影云桌面