oracle高级数据库应用,实验报告:数据闪回 使用flashback实现对表、模式以及数据库级误删除进行恢复。

oracle高级数据库应用,实验报告:数据闪回 使用flashback实现对表、模式以及数据库级误删除进行恢复。,第1张

首先你要知道依赖关系:

flashback database依赖于:闪回日志

flashback drop依赖于:回收站

flashback table/query依赖于:undo

开启闪回要在mount状态下:

alter system set db_flashback_retention_target=2880 scope=both;

alter database flashback on;

再者你要利用事务号获得undo语句

查看事务号:select versions_xid,empno,ename,sal from tt01

versions between timestamp minvalue and maxvalue

order by empno;

根据得到的事务号查看undo_sql语句:

select undo_sql from flashback_transaction_query

where xid='versions_xid' //这里的XID就是上面查询到的versions_xid

如果只是闪回误删除的表:

flashback table TT01 to before drop;

闪回的是最近删除的一张表,当然也可以根据情况自定义闪回误删的表

步骤:

查看DB回收站内容:show recyclebin;

在里面可以查看到删除的表,根据里面的recyclebin name可以来查看表结构

比如:desc "BIN$3naDFKEKFIDISB332DI"

这些都用在事务中,就是可能有好几句语句放在一起执行,rollback的话一旦中间那条语句执行错误,那之前没错误语句的执行对数据库的修改都将无效,这也是保证了数据库的完整性,不用rollback的话那就前面改掉的就不会再恢复了

单击开始,这里输入cmd,打开dos窗口

输入命令

exp bms/BMSPASS@TCDB file=E:\DBback\dbback20160112dmp

这里说明一下

这里的bms是指备份时,登录数据库实例TCDB的用户名;

这里的/是语法符号。

这里的BMSPASS是用户bms登录数据库TCDB时的密码;

@是语法符号。

这里的TCDB是Oracle数据库的实例名。

这里的file=E:\DBback\dbback20160112dmp 是只指备份文件的存放路径。

等待导出完成,如果看到这里的导出成功,说明备份完成了。

打开备份时指定的存储路径,就可以看到备份文件了。

如果在导出命令的最后加上full=y的参数,也就是

exp bms/BMSPASS@TCDB file=E:\DBback\dbback20160112dmp full=y

意思是将用户bms在TCDB数据库实例中的所有文件都备份,也就是完整备份。

数据库还原使用语法

imp bms/BMSPASS@TCDB file=E:\DBback\dbback20160112dmp

这里的E:\DBback\dbback20160112dmp是备份文件的存放路径

请添加详细解释

以上就是关于oracle高级数据库应用,实验报告:数据闪回 使用flashback实现对表、模式以及数据库级误删除进行恢复。全部的内容,包括:oracle高级数据库应用,实验报告:数据闪回 使用flashback实现对表、模式以及数据库级误删除进行恢复。、MYSQL 中的 不提交 与rollback 回滚有什么区别分别对数据库有什么影响、oracle 数据库如何还原等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10088874.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存