首页 / MYSQL / mysql 之 备份和恢复
mysql 之 备份和恢复
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了mysql 之 备份和恢复,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3771字,纯文字阅读大概需要6分钟。
内容图文
![mysql 之 备份和恢复](/upload/InfoBanner/zyjiaocheng/918/00a8a199c7504eaca993196acd8a9016.jpg)
一、备份和恢复类型
物理备份对比逻辑备份
物理备份是指直接复制包含数据的文件夹和文件。这种类型的备份适用于大数据量且非常重要,遇到问题需要快速回复的数据库。
逻辑备份保存能够代表数据库信息的逻辑结构(CREATE DATABASE, CREATE TABLEs等)和内容(INSERT …,或者分隔符分割的文本文件),这种类型的备份适合小数据量备份。可以通过备份文件进行库结构,表机构或者数据的修改。
物理备份主要有以下特点:
- 备份文件包含所有的数据库文件夹和文件,即是mysql数据文件夹下的全部(所有数据库实例)或者部分(单个或多个数据库实例)。
- 物理备份相较于逻辑备份快,它只涉及文件的拷贝而无需转换。
- 备份文件较逻辑备份紧凑。
- 备份速度及压缩性是备份的重要因素,尤其对业务繁忙且比较重要的数据库。因此Mqsql企业级的备份使用物理备份。.
- 备份和恢复的力度包括整个数据文件级别、单个文件级别,根据数据库引擎的不同可能提供表级别的力度。例如,Innodb引擎可以使用单表单文件存储。MyISAM表包含一系列相关文件。.
- 除了基本的数据库文件,备份还可以包含其它一些如日志、配置等相关的文件。
- MEMORY 引擎类型表很难使用这种类型备份,因为它的数据存储在内存中。.
- 备份的跨平台性要求设备间具有相似的硬件特性设备间进行。
- 备份一般在mysql服务器停止的时候进行,如果需要运行中执行备份,则需要对特定表进行锁操作,放置备份期间,表数据变化。
- 物理备份工具包括mysql的 mysqlbackup及文件系统级别的命令,如, scp, tar, rsync等
- 恢复:
- MySQL Enterprise Backup 可以恢复它所备份的备份。
- ndb_restore 用于恢NDB 表。
- 文件复制方式的复制,只需要将备份文件放到他们原始的位置即可。
逻辑备份有以下特点:
- 备份是以查询mysql服务器方式来获取数据库结构及内容信息。
- 备份速度比物理备份慢,因为它需要首先访问数据库获取数据,然后再转化为相应的逻辑格式。如果备份实在客户端,那么服务器还需要将备份发送到客户端。
- 备份文件比物理备份的文件大,尤其是以文本方式存储的时候。
- 备份和恢复粒度包括服务器级别、数据库级别、表级别。与存储引擎无关。
- 备份不包括日志和配置文件,及其它任何数据库相关的非数据文件。
- 备份以逻辑格式存储,与机器无关,可以跨平台使用。
- 逻辑备份需要mysql服务器在运行状态。
- 备份工具包括 mysqldump 及 SELECT ... INTO OUTFILE 语句,其实这些工具使用于任何引擎。即使是MEMORY。
- 恢复,对于SQL-format dump 文件可以使用 mysql 客户端。对于分隔符分割的文本类型文件,可以使用LOAD DATA INFILE 语句或者mysqlimport 客户端。
在线备份 vs 线下备份
在线备份,即备份时,可以实时服务器信息。线下备份,即,在服务器停止的时候执行备份。相应的备份文件也可以称为热备或者冷备。还一种可以称之为温备,即备份的时候,服务器运行,但是不允许进行数据修改。
在线备份特点:
- 对于其它客户端,备份是非侵入性的。不影响其它客户端进行时特定允许的数据操作。
- 注意备份期间数据锁的使用。
线下备份特点:
- 对客户端的影响是不可逆的。因此,一般备份采取在备机上进行备份。
- 备份过程很简单,客户端无法进行干预。
备份的线上和线下区别基本相似。但是,线上恢复的时候,因为需要进行较多的锁操作,所以受的影响比较大。恢复期间不要进行数据访问操作。
本地备份 vs 远程备份
本地备份即备份操作和数据库服务器在同一台服务器上。远程则相反。对于一些类型的备份,备份命令可以远程触发,本地写备份。
- mysqldump 可以连接本地或者远端服务器。生成本地或者远端备份。分隔符分割的文本存储在服务器所在服务器产生。
- SELECT ... INTO OUTFILE 本地或者远程触发。输出在服务器端。
- 物理备份基本上都是本地执行。虽然备份可能会需要发送到其它服务器。
快照备份
一些文件系统支持快照。可以保存特定时间点的一份逻辑备份。而不需要复制整个文件系统。Mysql本身不提供这种功能,需要地方放工具如Veritas, LVM, or ZFS提供。
全量备份 vs 增量备份
全量备份即备份mysql管理的所有数据。增量备份即备份改变的数据。全量备份可以通过以上讲述的一些备份方法进行备份。增量备份则需要通过启用服务器二进制日志(记录数据变化)来使用。
全量恢复 vs 增量恢复
全量恢复及恢复备份中所有的数据,是数据库恢复到备份时数据库状态。如果全量恢复的状态不够实时,可以接着使用增量恢复,恢复全量备份到这一刻所有的数据变化,是数据库状态保持最新。
增量恢复即恢复一个时间段内的数据变化。基于二进制日志,作为全量备份的补充。二进制文件中存储数据改变命令操作,通过重新执行相应的操作,使得数据库恢复到特定的状态.
备份规划、压缩和加密
内容总结
以上是互联网集市为您收集整理的mysql 之 备份和恢复全部内容,希望文章能够帮你解决mysql 之 备份和恢复所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。