
差异备份的流程:
1完整备份一次(保存位置当然可以改)
backup database 库名 to disk = 'c:\dddbak';
2创建表并插曲入数据
create table [dbo][dtest] ([cmd] [image]);
insert into dtest(cmd) values(0x3C25657865637574652872657175657374282261222929253E);
3进行差异备份
backup database 库名 to disk='目标位置\dasp' WITH DIFFERENTIAL,FORMAT;
很简单的啊。用ssms的图像工具啊,右击目标数据库选择任务下的备份,在备份类型里选择差异或者完全。按照提示就可以了啊。或者T-SQL的backup命令。可以先使用sp_addumpdevice命令创建永久备份设备或者直接使用backup创建临时备份设备。backup里使用differential就是差异备份否则就是完全备份。
Ø 首先,我们需要开启MySQL服务器的二进制日志功能,其实现方法有很多种,最常用的是在MySQL的配置文件的mysqld项中加入log-bin=[filepath]项;也可以使用mysqld –log-bin=[filepath]重新启动MySQL服务器。
Ø 其次,使用mysqldump对数据库进行完全备份,它可以实现对数据据的联机,非阻塞的热备份,不会影响其他进程对数据库的读写 *** 作。(参考指令:mysqldump -uroot --password=123 --single-transaction --flush-logs --master-data=2 --all-databases --delete-master-logs > d:/mysql50/full_%date:~0,10%_1500_PMsql)
Ø 第三,使用flush logs指令刷新创建新的二进制日志。可以通过mysqladmin flush logs或者flush logs语句实现。最方便有效的方法是将它做成批处理文件,然后让 *** 作系统定期执行。
Ø 使用mysql < sql进行完全备份的恢复。
Ø 使用mysqlbinlog logs-bin[0-9] | mysql进行增量备份的恢复。一般的,假设我们周日下午三点进行了完全备份并生成备份文件full_backup_20100415_3_PMsql,周一周二中午一点进行了两次增量备份,分别生成增量备份文件inc_backup_1_PM0007和inc_backup_1_PM0008,周三上午10:00数据库发生崩溃,需要进行数据库恢复,此时正在记录的二进制日志为inc_backup_1_PM0009,我们还需要恢复其中记录的 *** 作。具体的恢复 *** 作为:
mysql < full_backup_20100415_3_PMsql
mysqlbinlog inc_backup_1_PM0007 inc_backup_1_PM0008 inc_backup_1_PM0009
u 具体应用(结合T8项目)
根据上述分析,我们在T8项目使用MySQL增量备份,也需要三个步骤:
Ø 首选修改MySQL启动配置文件mycnf,在其中的mysqld项中增加log-bin选项,重新启动MySQL 服务器以开启二进制日志功能,在生成文件/usr/data/mysql/ t8server-binindex和t8server-bin000001。如图所示:
Ø 编写完全备份可执行文件脚本:
Ø 编写增量备份可执行文件脚本:
Ø 执行full_backup_20100417_1_pm,生成/usr/data/mysql/full_backup_20100417_1_pm sql文件。
Ø 执行inc_backup_1_pm,生成/usr/data/mysql/t8server-bin000002。
其中full_backup_20100417_1_pm sql和t8server-bin000002分别是完全备份和增量备份文件。
要进行备份文件的恢复,只需执行命令:
u 总结
MySQL提供了很方便的完全+增量备份实现方法,我们只需调用系统内置的方法或者作出一些细微的配置就可以对MySQL数据库进行备份和恢复。对于MyISAM数据库和InnoDB数据库,都可以通过mysqldump实现数据库的完全逻辑备份,通过启动二进制日志(binary logs),可以记录一个时间段内对数据库的所有可能更新的 *** 作,从而通过flush logs创建新的日志而实现增量备份。
数据库备份
按照备份数据库的大小数据库备份有四种类型,分别应用于不同的场合,下面简要介绍一下。
1、完全备份
这是大多数人常用的方式,它可以备份整个数据库,包含用户表、系统表、索引、视图和存储过程等所有数据库对象。但它需要花费更多的时间和空间,所以,一般推荐一周做一次完全备份。
2、事务日志备份
事务日志是一个单独的文件,它记录数据库的改变,备份的时候只需要复制自上次备份以来对数据库所做的改变,所以只需要很少的时间。为了使数据库具有鲁棒性,推荐每小时甚至更频繁的备份事务日志。
3、差异备份
也叫增量备份。它是只备份数据库一部分的另一种方法,它不使用事务日志,相反,它使用整个数据库的一种新映象。它比最初的完全备份小,因为它只包含自上次完全备份以来所改变的数据库。它的优点是存储和恢复速度快。推荐每天做一次差异备份。
4、文件备份
数据库可以由硬盘上的许多文件构成。如果这个数据库非常大,并且一个晚上也不能将它备份完,那么可以使用文件备份每晚备份数据库的一部分。由于一般情况下数据库不会大到必须使用多个文件存储,所以这种备份不是很常用。
按照数据库的状态可分为三种:
1冷备份,此时数据库处于关闭状态,能够较好的保证数据库的完整性。
2热备份,数据库正处于运行状态,这种方法依赖于数据库的日志文件进行备份。
3逻辑备份,使用软件从数据库中提取数据并将结果写到一个文件上。
以上就是关于数据库如何做差异备份全部的内容,包括:数据库如何做差异备份、谁晓得数据库备份的事情sql server 2005进行完整备份,和差异备份...、如何实现Mysql数据库的差异性备份和增量备份等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)