首页 / MYSQL / mysql备份与恢复详解
mysql备份与恢复详解
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了mysql备份与恢复详解,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含5238字,纯文字阅读大概需要8分钟。
内容图文
![mysql备份与恢复详解](/upload/InfoBanner/zyjiaocheng/586/ccbe1b208ab448b9b98ec1248b035d38.jpg)
MYSQL的备份有多少种,请简要的描述:
数据库分逻辑备份\物理备份
物理备份又分冷备和热备
A.直接拷贝数据文件到安全地方进行保存
B.使用MYSQLHOSTCOPY备分数据
C.使用MYSQLDUMP备份数据
D.使用MYSQL的同步复制,实现数据实时数据同步备份
常用的逻辑备份主要就是两种:一种是将数据生成为可以完全重现当前数据库中的数据的insert语句,另一种是将数据通过逻辑备份软件,将数据库表的数据以特定分隔符进行分割后记录在文本中。
对于第一种生成insert语句来说我们可以直接使用mysql自带的工具mysqldump来完成。这种方式不好之处在于可能导致数据的不一致,或是不完整。解决办法:一个是通过在数据库系统中加入写入锁,只提供数据库的查询服务;第二种是对于支持事务的存储引擎来说,INNODB BDB可以通过将整个备份过程控制在一个事务中,来达到备份数据的一致性和完整性;并且可以不用影响到数据库的正常运行。
恢复方式则是通过mysql<backup.sql直接运行的。
第二种直接生成数据格式。占用的空间小,数据格式清晰。可是没有数据库结构的脚本。不容易控制
实现方式:通过select******* to outfile from***命令来实现。恢复方式就是通过,load data infile和mysqlimport命令来做。
这一过程相当的复杂需要实时的进行恢复测试,保证备份数据是可用的
数据库的物理备份,主要的对象是数据库的物理数据文件,日志文件以及配置文件等。
4 xtrabackup/ibbackup
xtrabackup --backup --datadir=/var/lib/mysql/ --target-
dir=/data/backups/mysql/
xtrabackup --backup --defaults-file=/etc/my.cnf --target-
dir=/data/backups/mysql/
mysql的备份方式
1.mysqldump
效率比较低,备份和还原的速度都很慢,任何数据插入和更新操作都会被挂起
2.mysqlhotcopy
mysqlhotcopy 是专门针对myisam 数据表进行备份,备份的过程中,任何数据插入和更新操作都会被挂起
3.准备一台从服务器,专门做备份(master-slave方式)
4.xtrabackup 是 percona 的一个开源项目,可热备份innodb ,XtraDB,MyISAM(会锁表)
Xtrabackup有两个主要的工具:xtrabackup、innobackupex
xtrabackup只能备份InnoDB和XtraDB两种数据表,而不能备份MyISAM数据表
innobackupex-1.5.1则封装了xtrabackup,是一个脚本封装,所以能同时备份处理innodb和myisam,但在处理myisam时需要加一个读锁
Øxtra备份原理
记住开始时候的LSN号,然后开始拷备文件,同时运
行一个后台进程监视重做日志,并将变化拷备下来到
xtrabackup_logfile。
innobackupex可以备份myisam表和frm文件。当
xtrabackup结束后,执行flush tables with read lock,避
免数据更改,然后刷新所有myisam表到磁盘。拷备结
束后,释放锁。
mysqlbinlog也是一个恢复工具,是基于时间点来处理二进制文件的
Ø备份:直接拷备
Ø还原:
ü时间点还原:mysqlbinlog --stop-date="2005-04-20 9:59:59"
/var/log/mysql/bin.123456 | mysql -u root –pmypwd
mysqlbinlog --start-date="2005-04-20 10:01:00"
/var/log/mysql/bin.123456| mysql -u root –pmypwd
Ø日志点还原:
mysqlbinlog --stop-position="368312" /var/log/mysql/bin.123456 \
| mysql -u root -pmypwd
mysqlbinlog --start-position="368315" /var/log/mysql/bin.123456 \
| mysql -u root -pmypwd \
LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制。
LSN定义:
日志序号
日志序号 (LSN) 标识特定日志文件记录在日志文件中的位置。
LSN 由 DB2® 产品中的许多组件用来维护数据库一致性和完整性。除其他作用外,LSN 还对于分区数据库环境中的落实和回滚操作、崩溃和前滚恢复以及数据库操作同步起非常重要的作用。
日志文件中 LSN 的增长率与数据库活动直接相关联。也就是说,随着事务发生并且条目被写入日志文件,LSN 会不断增大。数据库中的活动越多,LSN 增长得越快。
日志序号的上限
在 DB2 V9.5 和较早版本中,日志序号 (LSN) 是 6 字节数字。从 FP3 开始,LSN 的范围在 0x0000 0000 0000(首次创建数据库时)到 0xFFFF 0000 0000(约 256 太字节)之间。在 FP3 之前,上限为 0xFFFF FFFF FFFF。随着记录被添加到日志文件中,LSN 在数据库生命期不断增长。
您可能感兴趣的文章:
- MySQL数据库备份与恢复方法
- MySQL数据库恢复(使用mysqlbinlog命令)
- 详解Mysql自动备份与恢复的几种方法(图文教程)
- MySQL误操作后快速恢复数据的方法
- 如何恢复Mysql数据库的详细介绍
- 详解MySQL误操作后怎样进行数据恢复
- 利用Xtrabackup工具备份及恢复(MySQL DBA的必备工具)
- MySQL备份与恢复之冷备(1)
- MySQL备份与恢复之热备(3)
- Mysql大型SQL文件快速恢复方案分享
内容总结
以上是互联网集市为您收集整理的mysql备份与恢复详解全部内容,希望文章能够帮你解决mysql备份与恢复详解所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。