你可以试试PRM-DUL for Oracle。
ParnassusData Recovery Manager(以下简称PRM-DUL)是企业级ORACLE数据灾难恢复软件,可直接从Oracle9i,10g,11g,12c的数据库数据文件(datafile)中抽取还原数据表上的数据,而不需要通过ORACLE数据库实例上执行SQL来拯救数据。ParnassusDataRecovery Manager是一款基于JAVA开发的绿色软件,无需安装,下载解压后便可直接使用。
恢复场景1 误Truncate表的常规恢复
D公司的业务维护人员由于误将产品数据库当做测试环境库导致错误地TRUNCATE了一张表上的所有数据,DBA尝试恢复但是发觉最近的备份不可用,导致无法从备份中恢复出该数据表上的记录。 此时DBA决定采用PRM来恢复已经被TRUNCATE掉的数据。
由于该环境中 所有数据库文件均是可用且健康的,用户仅需要 字典模式下加载SYSTEM表空间的数据文件以及被TRUNCATED表的数据文件即可,例如:
create table ParnassusDatatorderdetail_his1 tablespace users asselect from parnassusdatatorderdetail_his;SQL> desc ParnassusDataTORDERDETAIL_HIS
Name Null Type
----------------------- -------- --------------SEQ_ID NOT NULL NUMBER(10)SI_STATUS NUMBER(38)D_CREATEDATE CHAR(20)D_UPDATEDATE CHAR(20)B_ISDELETE CHAR(1)
N_SHOPID NUMBER(10)N_ORDERID NUMBER(10)C_ORDERCODE CHAR(20)N_MEMBERID NUMBER(10)N_SKUID NUMBER(10)C_PROMOTION NVARCHAR2(5)N_AMOUNT NUMBER(7,2)N_UNITPRICE NUMBER(7,2)N_UNITSELLINGPRICE NUMBER(7,2)N_QTY NUMBER(7,2)N_QTYFREE NUMBER(7,2)N_POINTSGET NUMBER(7,2)N_OPERATOR NUMBER(10)C_TIMESTAMP VARCHAR2(20)H_SEQID NUMBER(10)N_RETQTY NUMBER(7,2)N_QTYPOS NUMBER(7,2)select count() from ParnassusDataTORDERDETAIL_HIS;COUNT()
----------
984359
select bytes/1024/1024 from dba_segments where segment_name='TORDERDETAIL_HIS' and owner='PARNASSUSDATA';BYTES/1024/1024
---------------
18971875
SQL> truncate table ParnassusDataTORDERDETAIL_HIS;Table truncated
SQL> select count() from ParnassusDataTORDERDETAIL_HIS;COUNT()
----------
0
启动PRM ,并选择 Tools => Recovery Wizard点击Next
在此TRUNCATE场景中并未采用ASM存储,所以仅需要选择 《Dictionary Mode》字典模式即可
a:OPEN状态下,不能ALTER DATABASE MOUNT;
b:没有这样的语法
c:答案
d:直接到OPEN状态
shutdown -> nomount -> mount -> open
数据库必须启动到打开状态。
根据查询中关村在线官网显示,数据字典,数据库日常处于关闭状态,只有启动到打开状态,数据库的主要进程才可以在内存中运行,并且数据文件也可以打开并被访问。
数据字典数据库中的表,用于存储账户和密码信息。
冷备也称为一致性备份,这种备份通常是在数据库关闭的情况下进行的,比如说简单的copy。
而你说的在mount状态下的备份,是我们常说的热备,是一种非一致性的备份。
当你恢复的时候,并不能像冷备份那样完全的恢复,而是只能恢复到你备份时的某一个SCN/时间段。
除开对冷备份的恢复,一般做不完全恢复 *** 作都是在RMAN下面进行的,这时候是在mount状态下进行的,不需要停机,恢复完成后,切换当前的日志进行归档。
具体的你可以百度一下 “RMAN 乐沙弥”,他的微博在这方面写的很详细。
你好,在SQLSERVER里数据库的状态没有关闭这个状态。截图出来看看
你可以始终如下语句试试是否可以使数据库恢复正常
RESTOREDATABASEdbnameWITHRECOVERY
ALTERDATABASEdbnameSETONLINE
ALTERDATABASEdbnameSETREAD_WRITE
以上就是关于oracle数据库怎样还原到以前某个正确的状态全部的内容,包括:oracle数据库怎样还原到以前某个正确的状态、打开数据库后,若想更改数据库的状态为装载状态,正确的语句是哪一句、要访问数据字典,数据库必须启动到什么状态等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)