(oracle恢复数据)Oracle数据恢复方法

励志句子
评论 2023-07-21 14:30:29 浏览
一、Oracle数据库恢复软件使用经验

1、将手头还剩下的ORACLE数据文件即扩展名一般为.DBF或.ORA的文件复制一份到恢复使用的环境操作系统上,推荐使用的操作系统为Windows或Linux。并在Windows或Linux上安装JAVAJDK6以上版本。。

2、启动PRM-DUL点击恢复向导 字典模式。

3、加入所有oracle数据文件,不需要加入临时文件TEMPFILE、UNDO数据文件、控制文件、日志文件。

4、点击load按钮,PRM会自动加载数据字典即bootstrap动作。

5、Load完成后会在后台输出数据库字符集和国家字符集等信息:。

6、Load完成后PRM-DUL界面左侧出现按照数据库用户分组的树形图 点开USERS,可以看到多个用户名,例如用户需要恢复PDSCHEMA下的一张表,则点开PD,并双击表名:。

7、之后点击需要恢复数据的表,使用普通的unload到sqlldr文件或使用PRM-DUL的DataBridge数据搭桥功能均可以将数据转移到所需要的地方。。

8、使用数据搭桥模式也十分简便,通常规模式一样,在左侧树形图中点中你需要的表,右键选择DataBridge选项:。

9、使用数据搭桥模式时需要先创建目标数据库连接信息,这就和我们在SQLDEVELOPER中创建一个Connection是类似的工作,包括目标数据库的Host、端口、Service_Name以及用户登录信息;注意这里填选的用户信息,将会是稍后数据搭桥使用的目标数据库的User用户,即从源库这里抽取出来的表会传输到目标数据库中此处所指定的用户名下。。

10、如上述建立了一个G10R25的连接,用户为maclean,对应的oracleEasyConnection连接串为1191:1521/G10R  完成上述数据库连接信息填写后可以点击Test按钮来测试该连接配置是否正确可用,如果返回“Connecttodbserversuccessfully“则说明连接可用,点击Save按钮保存即可。。

11、Save后进入DataBridge主界面,首先在DBConnection下拉框中选择刚刚加入的ConnectionG10R25:。

12、此处如果所需用的数据库连接并未在DBconnection下拉框中出现,则需要点击DBconnection旁的”…”按钮添加DBConnection:。

13、正确选择DBConnection后可以Tablespace的下拉框将变得可用,选中合适的表空间:。

14、使用DataBridge恢复truncate时的注意事项:注意当从源库中恢复出truncate数据时,若使用databridge选项传输数据回到你的源库(如果回传数据不是到源库则没有该问题)时,需要注意Databridge插入到新建表的所在位置应当不是源库中被truncate数据所在的表空间,否则会出现一边在恢复truncate数据一边我们所需恢复的数据被新数据所覆盖的问题,可能导致该恢复场景中的数据完全无法恢复。故请注意,当使用databridge+恢复数据到源库时,在databridge中指定表空间时千万不要使用需要恢复数据所在的表空间!!!!!!   用户可以选择是否要将从源库传输到目标库的表的表名做映射修改,例如我们在源库中Truncate掉了一张表,现在通过DataBridge将数据恢复回源库中,但是不想使用原来的表名字,如原来的表名为torderdetail_his,现在希望将恢复的数据以别的表名存放,则可以选中“ifneedtoremaptable”并填入合适的目标表名,如下图所示: 。

15、注意: 1)对于目标库中已经存在对应表名的情况,PRM-DUL不会重建表而是会在现有表的基础上插入所需恢复的数据,由于表已经建立了所以指定的表空间将无效 2)对于目标数据库中还不存在对应表名的情况,PRM-DUL会尝试在指定表空间上建表并插入恢复数据  此场景中由于我们是恢复Truncate掉的数据,所以需要选中“ifdatatruncated”选项,否则PRM-DUL将以常规模式抽取数据,将无法抽取到已经被Truncate掉的数据。 Truncate数据的大致机理是,ORACLE会在数据字典和SegmentHeader中更新表的DataObjectID,而实际数据部分的块则不会做修改。由于数据字典与段头的DATA_OBJECT_ID与后续的数据块中的并不一致,所以ORACLE服务进程在读取全表数据时不会读取到已经被TRUNCATE但是实际仍未被覆盖的数据。 PRM-DUL通过自动扫描被TRUNCATE掉数据段头SegmentHeader后续的数据块智能判断TRUNCATE前数据段的DATA_OBJECT_ID,并根据字典中的表字段定义和自动获得的原始DATA_OBJECT_ID来抽取数据。  此处还存在一个”iftospecifydataobjectid”输入框,该输入框可以让用户指定要恢复的数据的DataObjectID。一般情况下不需要指定任何值,除非你发现恢复Truncate数据不成功时,建议在ParnassusData原厂工程师的帮助下指定该值。  如上正确完成DataBridge配置后即可证实开始数据搭桥,只需要点击DataBridge按钮即可:。

16、数据搭桥完成后会显示成功传输的数据行数,以及耗时。。

二、基于Oracle 数据文件DBF恢复数据

1、将手头还剩下的ORACLE数据文件即扩展名一般为.DBF或.ORA的文件复制一份到恢复使用的环境操作系统上,推荐使用的操作系统为Windows或Linux。并在Windows或Linux上安装JAVAJDK6以上版本。。

2、启动PRM-DUL点击恢复向导 字典模式。

3、加入所有oracle数据文件,不需要加入临时文件TEMPFILE、UNDO数据文件、控制文件、日志文件。

4、点击load按钮,PRM会自动加载数据字典即bootstrap动作。

5、Load完成后会在后台输出数据库字符集和国家字符集等信息:。

6、Load完成后PRM-DUL界面左侧出现按照数据库用户分组的树形图 点开USERS,可以看到多个用户名,例如用户需要恢复PDSCHEMA下的一张表,则点开PD,并双击表名:。

7、之后点击需要恢复数据的表,使用普通的unload到sqlldr文件或使用PRM-DUL的DataBridge数据搭桥功能均可以将数据转移到所需要的地方。。

8、使用数据搭桥模式也十分简便,通常规模式一样,在左侧树形图中点中你需要的表,右键选择DataBridge选项:。

9、使用数据搭桥模式时需要先创建目标数据库连接信息,这就和我们在SQLDEVELOPER中创建一个Connection是类似的工作,包括目标数据库的Host、端口、Service_Name以及用户登录信息;注意这里填选的用户信息,将会是稍后数据搭桥使用的目标数据库的User用户,即从源库这里抽取出来的表会传输到目标数据库中此处所指定的用户名下。。

10、如上述建立了一个G10R25的连接,用户为maclean,对应的oracleEasyConnection连接串为1191:1521/G10R  完成上述数据库连接信息填写后可以点击Test按钮来测试该连接配置是否正确可用,如果返回“Connecttodbserversuccessfully“则说明连接可用,点击Save按钮保存即可。。

11、Save后进入DataBridge主界面,首先在DBConnection下拉框中选择刚刚加入的ConnectionG10R25:。

12、此处如果所需用的数据库连接并未在DBconnection下拉框中出现,则需要点击DBconnection旁的”…”按钮添加DBConnection:。

13、正确选择DBConnection后可以Tablespace的下拉框将变得可用,选中合适的表空间:。

14、使用DataBridge恢复truncate时的注意事项:注意当从源库中恢复出truncate数据时,若使用databridge选项传输数据回到你的源库(如果回传数据不是到源库则没有该问题)时,需要注意Databridge插入到新建表的所在位置应当不是源库中被truncate数据所在的表空间,否则会出现一边在恢复truncate数据一边我们所需恢复的数据被新数据所覆盖的问题,可能导致该恢复场景中的数据完全无法恢复。故请注意,当使用databridge+恢复数据到源库时,在databridge中指定表空间时千万不要使用需要恢复数据所在的表空间!!!!!!   用户可以选择是否要将从源库传输到目标库的表的表名做映射修改,例如我们在源库中Truncate掉了一张表,现在通过DataBridge将数据恢复回源库中,但是不想使用原来的表名字,如原来的表名为torderdetail_his,现在希望将恢复的数据以别的表名存放,则可以选中“ifneedtoremaptable”并填入合适的目标表名,如下图所示: 。

15、注意: 1)对于目标库中已经存在对应表名的情况,PRM-DUL不会重建表而是会在现有表的基础上插入所需恢复的数据,由于表已经建立了所以指定的表空间将无效 2)对于目标数据库中还不存在对应表名的情况,PRM-DUL会尝试在指定表空间上建表并插入恢复数据  此场景中由于我们是恢复Truncate掉的数据,所以需要选中“ifdatatruncated”选项,否则PRM-DUL将以常规模式抽取数据,将无法抽取到已经被Truncate掉的数据。 Truncate数据的大致机理是,ORACLE会在数据字典和SegmentHeader中更新表的DataObjectID,而实际数据部分的块则不会做修改。由于数据字典与段头的DATA_OBJECT_ID与后续的数据块中的并不一致,所以ORACLE服务进程在读取全表数据时不会读取到已经被TRUNCATE但是实际仍未被覆盖的数据。 PRM-DUL通过自动扫描被TRUNCATE掉数据段头SegmentHeader后续的数据块智能判断TRUNCATE前数据段的DATA_OBJECT_ID,并根据字典中的表字段定义和自动获得的原始DATA_OBJECT_ID来抽取数据。  此处还存在一个”iftospecifydataobjectid”输入框,该输入框可以让用户指定要恢复的数据的DataObjectID。一般情况下不需要指定任何值,除非你发现恢复Truncate数据不成功时,建议在ParnassusData原厂工程师的帮助下指定该值。  如上正确完成DataBridge配置后即可证实开始数据搭桥,只需要点击DataBridge按钮即可:。

16、数据搭桥完成后会显示成功传输的数据行数,以及耗时。。

三、oracle数据库怎么备份恢复

1、可以安装个电脑管家在电脑上面然后选择工具箱,可以看到有一个文件数据恢复工具使用这个工具,可以检测出电脑里面误删的文件,然后进行恢复。

四、系统重装后,怎么恢复以前的ORACLE数据库

1、可以安装个电脑管家在电脑上面然后选择工具箱,可以看到有一个文件数据恢复工具使用这个工具,可以检测出电脑里面误删的文件,然后进行恢复。

五、oracle数据库恢复方法(oracle数据库恢复数据)

1、第一种、首先,备份数据库(X、oracleoradata)下的数据文件,重新命名即可(否则装数据库的时候会提示sid已存在)。

2、重新安装数据库,当然数据库的名字就是你要恢复的名字。

3、安装完成后,打开控制面板,停止oracle的服务。

4、把(X、oracleoradata)下新生成的文件改名,把原先目录下的文件恢复名字。

5、再重新启动oracle服务和监听。

6、用sys/asdba登陆数据库,可能会提示权限不够(ora-01031)修改(X、oracleora92etworkadmin)文件夹下的sqlnet.ora文件,添加SQLNET._SERVICES=(NTS),增加权限。

7、登陆进去后,打开table提示不能打开。

8、打开common页,执行命令alertdatabaseopen。

9、这时再刷新table,发现原先的表可以打开了。

10、恢复成功了。

11、再用原先数据库的普通用户进入。

12、发现一切正常。

13、第二种、首先,将原来的ORACLE文件夹改名,原来的路径是D、/oracle.我暂时改成D、/oracle_old.找来ORACLE(我用的是ORACLE9I)安装光盘,将ORACLE安装在原来安装的目录下,这样恢复起来更加方便,主要是注册表的内容不用修改。

14、安装完了之后,系统中又有一个可以使用的ORACLE了。

15、这个时候要做的就是将原来的文件和数据恢复过来。

16、第一步,先关闭ORACLE的所有已经启动的项目,在"服务"里面逐一关闭。

17、然后,将安装目录改名。

18、(例如D、/oracle.改成D、/oracle_new,再将D、/oracle_old改成D、/oracle.)这样理论上说从物理层面恢复了ORACLE了。

19、但是现在还不能启动ORACLE的监听程序和服务程序,还要从逻辑上解决。

20、在dos环境下执行一个删除命令、oradim-delete-sidmm,其中mm为创建oracle时候创建的实例建议执行这个命令后重新启动机器,重启后就可以建立和原来实例名相同的实例。

21、当然你懒,不重新启动也可以,但是你的实例名就不能和原来的一样了。

22、在dos环境下执行命令oradim-new-sidmm-startmodea-pfile"D、oracleadminmmpfileinitmm.ora"创建一个新的实例,其中"mm"为新数据库的名称。

23、启动服务,先打开数据库,然后可以用以前的用户名和密码登陆进去。

24、要补充的是,一般的ORACLE数据库的监听程序都是用电脑的名称来识别地址的,而不是0.1或者localhost.所以,如果我们安装系统的时候用的是不同的电脑名称(比如我原来用的是wm_mm.重新安装后用的是wenming_mm),那么还有一个工作要做,就是修改文件listener.ora.将里面的相关的东西改过来就可以了。

25、需要耐心、细心,可能在一步里有一个细小的差别就会出些古怪的错误提示,有时需要根据错误提示采取策略,总之原理是,先装一个一模一样的ORACLE,安装目录、数据库名称都一样,这样注册表里不用更改。

26、再覆盖物理文件,后重新实例化,打开数据库就可以进去了。

27、注、恢复必须要有以下文件a、初始化参数文件INIT.ORAb、所有数据文件.dbfc、所有重做日志文件(联机日志、归档日志)redod、所有控制文件crtle、internal密码文件。

六、oracle数据库如何恢复丢的参数文件

1、连接数据库,查看默认情况下数据库所使用的参数文件信息。

2、通过RMAN备份参数文件,如果开启了自动备份功能,参数文件和控制文件也会自动进行备份。

3、模拟删除参数文件。

4、重新启动数据库,发现由于参数文件丢失,数据库无法正常启动。

5、而且数据库也无法启动到nomount状态。

6、于是复制pfile文件夹下的参数文件,到错误提示中的目录下。

7、然后可以看到可以正常启动数据库了,再从刚才的pfile文件创建spfile即可。

七、oracle数据库数据删除后如何恢复?

1、在数据库在创建测试表空间,如下图。

八、Oracle数据库的备份与恢复

1、在安装了oracle客户端的机子上按WIN+R,输入CMD,打开命令行窗口。

2、在命令行中输入命令:EXPusername/userpassword@orclfile=D:2018060411dmptables=(tableName1,tableName2)命令详细如下:username:数据库用户名(必须)userpassword:数据库用户密码(必须)orcl:需备份的数据库的服务标识名(必须)file:备份文件的全路径名称,可根据需要修改(必须)tables:可填写需备份的表名,多个以‘,’分隔(可选)。

3、在命令行中输入命令impusername/userpassword@orcl file=D:2018060411dmptables=(tableName1,tableName2)FULL=Y命令详细如下:username:数据库用户名(必须)userpassword:数据库用户密码(必须)orcl:需恢复的数据库的服务标识名(必须)file:备份文件的全路径名称,可根据需要修改(必须)tables:可填写需备份的表名,多个以‘,’分隔(可选)FULL:FULL=Y,表示恢复备份中的所有数据,(可选)。