广州总部电话:020-85564311
广州总部电话:020-85564311

广州网站建设-小程序商城开发-广州小程序开发-企业微信开发公司-网站建设高端品牌-优网科技

20年
互联网应用服务商
请输入搜索关键词
知识库 知识库

优网知识库

探索行业前沿,共享知识宝库

MySQL 备份和恢复(一):备份恢复概述
发布日期:2025-04-28 17:09:16 浏览次数: 816 来源:SRE运维派

点击上方 SRE运维派?关注我?,选择 设为星标

优质文章,及时送达

1 MySQL 备份和恢复

1.1 备份恢复概述

1.1.1 为什么要备份

尽管采取了一些管理措施来保证数据库的安全,但是在不确定的意外情况下,总是有可能造成数据的损失。

https://www.toutiao.com/article/6939518201961251359/
https://tech.sina.com.cn/roll/2020-02-26/doc-iimxyqvz6041173.shtml

在生产环境中可能会遇到各种状况导致数据丢失,最主要的导致数据丢失的原因有这几种:

硬件故障,软件故障,自然灾害,黑客攻击,误操作 (占比最大)

所以为了保证数据的安全,我们需要定期对数据进行备份。

备份就是为了防止原数据丢失,保证数据的安全。当数据库因为某些原因造成部分或者全部数据丢失后,备份文件可以帮我们找回丢失的数据。因此,数据备份是很重要的工作。

任何数据库都需要备份,备份数据是维护数据库必不可少的操作。

1.1.2 备份类型

相关概念

相关概念 
说明
完全备份 
备份整个数据库全部数据
部份备份 
只备份部份数据子集,例如部份库或表
增量备份
仅备份最近一次完全备份或增量备份(如果存在增量)以来变化的数据,备份较快,还原复杂
差异备份 
仅备份最近一次完全备份以来变化的数据,备份较慢,还原简单
冷备份 
读、写操作均不可进行,数据库停止服务
温备份 
可读不可写
热备份 
读、写操作均可执行,MyISAM 只支持温备,不支持热备,InnoDB都支持
物理备份 
直接复制数据文件进行备份,与存储引擎有关,占用较多的空间,速度快
逻辑备份
从数据库中"导出"数据另存而进行的备份,与存储引擎无关,占用空间少,速度慢,可能丢失精度
增量和差异备份的基础和前提是完全备份

1.1.3 备份内容

数据库备份内容主要包括以下几个方面

  • 数据库中的数据

  • 二进制日志,InnoDB 事务日志

  • 用户账号,权限配置,程序代码(视图,存储过程,触发器,事件调度器)

  • 相关配置文件


1.1.4 备份策略

备份数据的策略要根据不同的应用场景进行定制,可以参考的内容主要有以下几个方面,我们可以根据不同的需求来制定符合当前业务和环境的数据库备份策略。

  • 能容忍最多丢失多少数据

  • 备份产生的负载

  • 备份过程的时长

  • 温备的持锁多久

  • 恢复数据需要在多长时间内完成

  • 需要备份和恢复哪些数据


1.1.5 还原要点

  • 备份文件要异地(不同服务器)存放,不要把备份文件放在 MySQL 服务器上(不要把鸡蛋放在同一个篮子里面)

  • 做还原测试:备份完成后,需要进行还原测试,要保证备份出来的数据能成功的还原回去

  • 制定备份标准:将备份与还原流程进行规范化与制度化,形成技术文档


1.1.6 备份工具

  • cp,tar等复制归档工具:物理备份工具,适用所有存储引擎;只支持冷备;完全和部分备份

  • LVM 的快照:先加读锁,做快照后解锁,几乎热备;借助文件系统工具进行备份

  • mysqldump:逻辑备份工具,适用所有存储引擎,对 MyISAM 存储引擎进行温备;支持完全或部分备份;对 InnoDB 存储引擎支持热备,结合 binlog 的增量备份

  • xtrabackup:由 Percona 提供支持对 InnoDB 做热备(物理备份)的工具,支持完全备份、增量备份

  • MariaDB Backup:从 MariaDB 10.1.26 开始集成,基于 Percona XtraBackup 2.3.8 实现

  • mysqlbackup:热备份,MySQL Enterprise Edition 组件

  • mysqlhotcopy:PERL 语言实现,几乎冷备,仅适用于MyISAM存储引擎,使用LOCK TABLES、FLUSH TABLES 和 cp 或 scp 来快速备份数据库


1.1.7 冷备份和还原的实现

#10.0.0.164主机mysql> show databases;+--------------------+| Database           |+--------------------+| discuz             || eshop              || information_schema || mysql              || performance_schema || shopxo             || sys                || testdb             || wordpress          |+--------------------+9 rows in set (0.01 sec)
mysql> select count(*) from testdb.t1;+----------+| count(*|+----------+| 8        |+----------+1 row in set (0.01 sec)
#停止服务[root@rocky86 ~]# systemctl stop mysqld.service
#备份到远程主机,用SCP命令也可以#如果配置文件有修改,则也需要备份[root@rocky86 ~]# rsync -/var/lib/mysql root@10.0.0.183:/root/data/
在远程主机上还原,远程主机上的MySQL 版本和配置,必须要与备份机上的保持一致
#10.0.0.183 远程主机上查看[root@rocky86 ~]# ll /root/data/total 4drwxr-xr-x 12 mysql mysql 4096 Jan 2 13:18 mysql
#在10.0.0.183主机上还原[root@rocky86 ~]# mv /root/data/mysql /var/lib/mv: overwrite '/var/lib/mysql'? y
#远程主机开启服务[root@rocky86 ~]# systemctl start mysqld.service
#测试mysql> show databases;+--------------------+| Database           |+--------------------+| discuz             || eshop              || information_schema || mysql              || performance_schema || shopxo             || sys                || testdb             || wordpress          |+--------------------+9 rows in set (0.00 sec)
mysql> select count(*) from testdb.t1;+----------+| count(*|+----------+| 8        |+----------+1 row in set (0.01 sec)

— END —


-点击下方卡片关注-

点赞、转发、在看!

您的鼓励是对我最大的支持!

优网科技,优秀企业首选的互联网供应服务商

优网科技秉承"专业团队、品质服务" 的经营理念,诚信务实的服务了近万家客户,成为众多世界500强、集团和上市公司的长期合作伙伴!

优网科技成立于2001年,擅长网站建设、网站与各类业务系统深度整合,致力于提供完善的企业互联网解决方案。优网科技提供PC端网站建设(品牌展示型、官方门户型、营销商务型、电子商务型、信息门户型、DIY体验、720全景展厅及3D虚拟仿真)、移动端应用(手机站APP开发)、微信定制开发(微信官网、微信商城、企业微信)、微信小程序定制开发等一系列互联网应用服务。


我要投稿

姓名

文章链接

提交即表示你已阅读并同意《个人信息保护声明》

专属顾问 专属顾问
扫码咨询您的优网专属顾问!
专属顾问
马上咨询
联系专属顾问
联系专属顾问
联系专属顾问
扫一扫马上咨询
扫一扫马上咨询

扫一扫马上咨询

和我们在线交谈!