oracle数据导入的时候修改了表结构和视图,后来插入了表数据,做了备份。现有一个备份是插入数据之前做的,表结构和视图都没问题。怎么把此数据库修复? oracle数据库正常在用的库,插入了表数据(此数据很重要不能删),后做了错误操作,修改了表结构和视图存储,导致数据库有问题,具体不知道做了什么操作导致,后做了备份。现有一个备份是插入数据之前做的,表结构和视图都没问题。怎么把此数据库修复?且需要保证数据的完整性。(本人小白) 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 楼主最好说明一下,是哪种备份。如果是rman,现在测试机上做恢复,再通过dblink把数据插过来就行。如果是exp或expdp,直接恢复到另一个schema(用户),再插过来。 对啊。恢复的方式取决于你备份的方式。如果你是单表备份出来的:create table newtable as select * from 你的表 --先备份现在有新数据的表drop table 你的表 purge;create table 你的表 as select * from 插入之前的备份表;如果是exp或expdp导出备份:先备份现有结构及内容 --貌似你有了drop table 你的表 purge ;imp ..... 备份用的是exp导出。所有的操作都用了同一用户。 exp备份的数据,多谢指导。 exp备份的数据,多谢指导。在另一台机器上安装同样版本的数据库,然后用你EXP导出的备份文件用IMP导入,然后把原库问题的表删除并重建,数据通过DBLINK插入到原库 那就 imp 到另一个用户(最好是新建一个用户)下,再 insert into t select * from new_user.t 把表定义IMP出来,然后修改源库的表定义有什么问题? oracle安装后重启电脑不能使用 这个sql执行效率为什么会是这样! 紧急求助 oracle建索引失败后 RAC宕机! oracle如何实现描述中需求? sql 转换 求pro*c/C++ 编绎生成 cpp文件的脚本啊. 急~~~ oracle中load用法 oracle 自定义函数间调用无法传参(急!!!) 权限问题!! 求救:ORA-01000 超出打开游标的最大数 oracle 12c管理界面进不去 oracle插入m² 变成m?
如果是rman,现在测试机上做恢复,再通过dblink把数据插过来就行。如果是exp或expdp,直接恢复到另一个schema(用户),再插过来。
如果你是单表备份出来的:
create table newtable as select * from 你的表 --先备份现在有新数据的表
drop table 你的表 purge;
create table 你的表 as select * from 插入之前的备份表;如果是exp或expdp导出备份:
先备份现有结构及内容 --貌似你有了
drop table 你的表 purge ;
imp .....
那就 imp 到另一个用户(最好是新建一个用户)下,再 insert into t select * from new_user.t