exp增量备份所导出的是变更的数据仍是变更的整张表

上一篇帖子说过须要作一个数据库在win端下的备份脚本,小白表示做为一个初级DBA,常常会范一些小错误,因此只能把这些问题错误记录下来,可是这也不能阻止我探索的脚步不是。数据库

因此,在作exp导出的增量备份这个参数使用的时候,发现一个奇怪的问题:bash

我建立的一个新用户,创建一张新表,作一次数据库全备后,导出了8条数据,可是我向这张表中插入两条新数据后,作一次增量导出,增量导出的确实仅仅是这张有数据变更的表,可是导出的是10条数据。oracle

难道exp作增量备份的时候导出的是有数据变更的表吗?而不是将变更的数据单独的增量导出?工具

带着这个问题我须要重新作一次实验:ui

新建表JJJ,向表内插入两条数据,下面就是使用导出工具exp导出整个数据库了。spa


exp system/oracle inctype=complete file=/home/oracle/scotts_full.dmp log=/home/oracle/log01.log复制代码


在导出日志中能够看到SCOTTS用户下的表JJJ成功的导出了两条数据。日志

而后咱们继续向表JJJ中插入两条数据,而后使用增量导出,看看导出的是两条数据仍是4条数据。code


exp system/oracle inctype=incremental file=/home/oracle/scotts_incr.dmp log=/home/oracle/log02.log
复制代码


导出的日志显示,表JJJ导出了4条数据,导出的是整张表,而不是增长变更的数据。cdn

那咱们使用导出的备份验证一下咱们的出来的结果,删除用户SCOTTS下的表JJJ,使用imp导入命令将这个备份导入到数据库里,查看导入的数据是什么。blog

imp system/oracle inctype=RESTORE file=/home/oracle/scotts_incr.dmp full=y
复制代码



在这里我就不重新建一个新的实例导入了,仅仅是删除了用户里的表,很明显导入了4条数据。


咱们能够得出结论了:使用exp导出的增量备份文件,当表内的数据出现变更时,所作的增量备份导出的是有数据变更的整个表,而不是仅仅增量备份有变更的数据。

相关文章
相关标签/搜索