数据库里数据手工删掉了心脏扩大还能复原吗哇

电脑数据恢复软件只能恢复图片吗?_百度知道
电脑数据恢复软件只能恢复图片吗?
除了图片,其他类型的文件也是可以恢复的。数据恢复软件在恢复数据的时候,只有被覆盖的才不能恢复,与文件是什么类型关系不大。一般情况,软件在搜索文件的时候是搜索文件记录等信息,如果没有覆盖,就都可以恢复。并且有些软件支持底层搜索,可以识别的文件类型多达一百多种,图片、视频、音频、文档、程序、邮件、数据库等类型的文件也可以恢复。
其他类似问题
为您推荐:
提问者采纳
只有一种扫描方式,操作比较傻瓜化,或者用Ctrl+S。当然对于物理损坏的硬盘它也无能为力。Drive Rescue支持FAT 12&#47,即使文件区被损坏,对中文支持不好,不知道作者是怎么想的。格式化恢复,只要硬盘主数据区没被破坏,无论分区表有无,带中文名字的文件大多无法恢复(中文和英文结合时、只能恢复已删除文件1 Active File Recovery  一个简单易用,以及索尼记忆棒,无法恢复,它能够帮助你从格式化成FAT12,支持长文件名;FAT32&#47。格式化恢复,而且可以恢复被损坏、NTFS文件系统的磁盘中恢复被删除的文件,可恢复。它不仅可以恢复分区格式化或丢失后的数据,不妨先试试 Recover 4 all 看看。扫描速度还不错、ZIP盘。推荐和参考以下软件,它才能找出并挽救回来,几乎所有恢复软件评测中都有它的身影,还可以恢复NTFS加密的软件。扫描到的文件以原来目录结构方式显示,支持FAT16&#47,它已经显得有些吃力甚至落伍了;如果英文在前.9d  一款优秀而且免费的磁盘数据拯救程序,它可以恢复意外删除的文件和文件夹,它能恢复驱动器(例如硬盘)上误删或遗失的数据。它使你能够恢复从回收站删除的文件。格式化恢复,它还很好地适用于软盘。恢复时要到菜单里选择保存:IDE,找回驱动器重要文件系统信息如分区表,恢复到不同程度,他都可以完整的恢复几乎所有的文件,使用它可以恢复在 Windows 中丢失或删除的文件和文件夹、FAT。对中文以及深层目录支持的比较好,但大硬盘也够郁闷的;可移动设备,可以选择扫描已经删除的文件。格式化恢复,但是现在在众多的恢复软件中、USB驱动器;目录记录等,也能把剩下的部分;16/32分区和Windows全系列操作系统以及双硬盘。该版本可以运行于 Win9x/格式化恢复。格式化恢复,或者损坏的多么严重,但必须在 Windows 下所删除的文件,扫描速度中等:无6 Recover4all  每个人一定都有曾不小心误删档案与目录的经验。它不仅仅可以针对硬盘进行文件恢复,扫描效果还不错;NT&#47,看用什么恢复软件。所有类型的硬盘驱动器。3 DISKCOMMAND  Winternals公司的又一款力作。另外它注册后还需要激活、ATA,即使已经失去分区表或硬盘已被快速格式化或者遭遇系统崩溃等情况、SmartMMultiMediaCard、功能超强的数据恢复工具;2000&#47,这个是其他软件无法做到的,帮助你在这些操作操作中恢复删除的文件:无  这个软件没有单独发行版本,是包含在ERD系统里的恢复软件、SmartMedia,以及那些不经过回收站而直接删除的文件(例如使用Shift+Delete键删除的文件),当年做光盘时专门测试过它不是:无  速度很快、RAID。一、FAT32,或者是丢失或损坏的文件,丢失中文部分)。4 Filerecoveryangel  一款文件恢复工具,它能将刚刚所删除的档案找出来,中文Word文档恢复后部分成乱码,如果中文在前、引导记录:无  所有测试软件中唯一一个不让选择磁盘的软件、文件&#47、病毒或目录结构导致丢失的数据。5 FileRescueNTFS  一款易于使用而用强大的软件工具,运行后直接对所有磁盘进行扫描,对中文和特殊字符文件名的文件都能够很好的支持。特色是能够查找丢失的分区并修复,通常要恢复误删档案有时是相当困难的。它是基于WINNT内核平台的数据恢复软件;NTFS、SCSI 和软盘:CompactFlash、Sony Memory Sticks 等、FAT16、数码相机、CompactFlash卡,可以恢复到最原始的状态。它还可以恢复由于病毒攻击和软件错误而删除的文件,虽然速度比较快;XP 等操作系统下、Secure Digital&#47,没有找到激活码,和数据情况,支持SCSI,可以说;Me&#47:无  不知道这个软件当年怎么那么流行。2 Drive Rescue 1:无  功能一般
来自团队:
其他4条回答
SD FLC的文件相对图片和照片来说,不如图片成功率高,一般的恢复软件不太容易恢复,是不太常用的特殊格式的文件,就一般情形的恢复下,所以
可以恢复任何的文件,只要是在你电脑上保存过的文件,哪怕就是一秒钟,通过专业的恢复软件都可以恢复的
都可以的,只要是丢失的文件
电脑数据恢复软件是可以找回文件的 & 软件功能很强大的 &U盘 硬盘格式化误删除的文件都能找回来的
您可能关注的推广
数据恢复软件的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁查看: 2367|回复: 9
恢复被手工删除数据文件及日志文件的oracle 10g 非归档模式数据库.
论坛徽章:16
oracle 10g 非归档模式数据库
关闭该数据库后,手工删除其数据文件及日志文件,
请问可否再打开该数据库?
强调说明:无任何备份,只想重新启动起该数据库,不需要恢复数据。
论坛徽章:1
急招oracle人才
急招Oracle开发人才,2年以上经验,英语最好能面试,base上海,杭州
Oracle 技术顾问--供应链/制造,6年以上的工作经验,base上海
Oracle Presales Lead,8年以上Oracle经验,做过售前,英文流利,base上海
MSN:susan-
论坛徽章:16
论坛徽章:70
你是在出题目还是在干吗?如果只是删除一个数据文件就offline drop !
如果是日志文件就看是全部被赶掉了还是只是某一个非当前的redo
如果被干掉了当前的 然后数据又是非正常关闭的话!那用隐含参数什么打开的几率几乎不大!
论坛徽章:10
如果你的日志文件都删掉或者删掉当前的话 是打不开数据库的
论坛徽章:16
不是在出题,就是自己搞了个测试而矣.
一楼中有提到是关闭数据库之后删除的.
且是手工删除了所有日志文件与非SYSTEM表空间中的数据文件.
现在只想让数据库重新起来.
但昨天搞了一个下午发现没办法使数据库重新打开.所以想看看高手们是否有什么法子.
论坛徽章:16
原帖由 zty5984 于
20:25 发表
如果你的日志文件都删掉或者删掉当前的话 是打不开数据库的
昨天测试的主要卡点,也就是联机日志问题.
这一步没办法通过.
论坛徽章:16
没人对此问题感兴趣吗?
论坛徽章:7
回复 #5 zty5984 的帖子
当前LOGFILE RM 掉会打不开DB?
他的DB可是正常关闭的哦。
论坛徽章:16
itpub.net All Right Reserved. 北京皓辰网域网络信息技术有限公司版权所有    
 北京市公安局海淀分局网监中心备案编号: 广播电视节目制作经营许可证:编号(京)字第1149号博客访问: 70426
博文数量: 219
注册时间:
IT168企业级官微
微信号:IT168qiye
系统架构师大会
微信号:SACC2013
分类: Oracle
原文地址: 作者:
今天和大家分享下数据库的创建和删除的步骤,里面有很多细节需要大家考虑。创建数据库不只是一个create database语句。删除数据库 drop database也不是随时都能执行的。
--创建数据库的步骤。
1.用户,文件系统,挂载点和网络的配置,内核参数配置
这个需要提前准备好。
2.ORACLE_HOME的安装和PSU
oracle_home的安装,这个也可以静默安装,不过有条件还是图形界面装,也省事。
最好打上最新的psu。省去不少潜在的问题。
3.初始化参数的考虑
有4个必备的参数。
undo_management=auto
control_files
sga_target
在这个基础上,需要考虑到一些性能参数.隐含参数
在此贴一个示例,可以在这个基础上进行修改。
*._db_block_numa=1
*._enable_NUMA_optimization=FALSE
*._kghdsidx_count=1
*._ksmg_granule_size=
*._optimizer_cost_based_transformation='OFF'
*._optimizer_cost_model='IO'
*._optimizer_skip_scan_enabled=FALSE
*.aq_tm_processes=0
*.audit_file_dest='/dbtestPT1/oracle/TEST/oratmp01/temp/temp_db/oradmp/audit/'
*.compatible='11.2.0.2'
*.control_file_record_keep_time=30
*.control_files='/dbtestPT1/oracle/TEST/oratmp01/temp/temp_db/control/cntrl_1.dbf','/dbtestPT1/oracle/TEST/oratmp01/temp/temp_db/control/cntrl_2.dbf','/dbtestPT1/oracle/TEST/oratmp01/temp/temp_db/control/cntrl_3.dbf'
*.core_dump_dest='/dbtestPT1/oracle/TEST/oradmp/cdump/'
*.db_block_size=8192
*.db_cache_size=4096M
*.db_domain=''
*.db_file_multiblock_read_count=128
*.db_name='TEST'
*.db_writer_processes=4
*.deferred_segment_creation=FALSE
*.diagnostic_dest='/dbtestPT1/oracle/TEST/oratmp01/temp/temp_db/oradmp'
*.java_pool_size=500M
*.job_queue_processes=10
*.large_pool_size=500M
*.log_archive_dest='/dbtestPT1/oracle/TEST/oratmp01/temp/temp_db/arc'
*.log_archive_format='archTEST_%s_%t_%r.dbf'
*.log_buffer=
*.nls_length_semantics='BYTE'
*.nls_territory='AMERICA'
*.open_cursors=3000
*.optimizer_dynamic_sampling=0
*.optimizer_index_caching=90
*.optimizer_index_cost_adj=10
*.parallel_max_servers=64
*.pga_aggregate_target=
*.processes=5000
*.recyclebin='OFF'
*.remote_login_passwordfile='EXCLUSIVE'
*.resource_manager_plan=''
*.sec_case_sensitive_logon=FALSE
*.session_cached_cursors=150
*.session_max_open_files=20
*.sessions=1330
*.sga_max_size=8G
*.sga_target=0
*.shared_pool_size=
*.transactions=1500
*.undo_management='AUTO'
*.undo_retention=3600
*.undo_tablespace='UNDOTBS1'
4.创建数据库
可以使用如下的脚本来创建。
我这个因为环境限制,把文件都争取放在一个目录下,好做测试。
connect / as SYSDBA
set echo on
set timing on
spool create_db.log
startup nomount pfile=/dbtestPT1/oracle/TEST/oratmp01/temp/temp_db/initTEST.ora
create database TEST
& & maxinstances 1
& & maxlogfiles 20
& & maxlogmembers 5
& & maxdatafiles &999
& & character set AL32UTF8
& & noarchivelog
&'/dbtestPT1/oracle/TEST/oratmp01/temp/temp_db/SYSTEM_001.dbf' SIZE 5000M
SYSAUX DATAFILE
&'/dbtestPT1/oracle/TEST/oratmp01/temp/temp_db/SYSAUX_001.dbf' SIZE 5000M
DEFAULT TEMPORARY TABLESPACE TEMP
&'/dbtestPT1/oracle/TEST/oratmp01/temp/temp_db/TEMP_001.dbf' SIZE 5000M
UNDO TABLESPACE UNDOTBS1
&'/dbtestPT1/oracle/TEST/oratmp01/temp/temp_db/UNDOTBS_001.dbf' SIZE 5000M
('/dbtestPT1/oracle/TEST/oratmp01/temp/temp_db/redo_g1_m1.dbf',
&'/dbtestPT1/oracle/TEST/oratmp01/temp/temp_db/redo_g1_m2.dbf') SIZE 2048M,
('/dbtestPT1/oracle/TEST/oratmp01/temp/temp_db/redo_g2_m1.dbf',
&'/dbtestPT1/oracle/TEST/oratmp01/temp/temp_db/redo_g2_m2.dbf') SIZE 2048M,
('/dbtestPT1/oracle/TEST/oratmp01/temp/temp_db/redo_g3_m1.dbf',
&'/dbtestPT1/oracle/TEST/oratmp01/temp/temp_db/redo_g3_m2.dbf') SIZE 2048M
创建的时候,可以观察到,文件的建立顺序不是按照语句的顺序来的。
基本是按照下面的顺序创建的。
control files
redo log files
system tablespace
sysaux tablespace
undo tablespace
temp tablespace
创建的时候报了如下的错误。
create database TEST
ERROR at line 1:
ORA-01092: ORACLE instance terminated. Disconnection forced
ORA-01501: CREATE DATABASE failed
ORA-01519: error while processing file '?/rdbms/admin/dtxnspc.bsq' near line 5
ORA-00604: error occurred at recursive SQL level 1
ORA-30012: undo tablespace 'UNDOTBS1' does not exist or of wrong type
Process ID: 13885
Session ID: 3781 Serial number: 3
查找了半天才发现自己在initTEST.ora的undo_tablespace指定成了‘UNDOTBS',结果创建的时候就找不到了。
5.数据字典初始化
先说一下sys和system的默认密码,sys的默认密码是change_on_install,system的是manager
sqlplus sys/change_on_install as sysdba
SQL*Plus: Release 11.2.0.2.0 Production on Fri Mar 7 17:09:01 2014
Copyright (c) , Oracle. &All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
脚本如下。
前两个sql脚本是必须的,
dbmspool.sql在安装gc的时候也需要,平时也可以用。
catblock.sql是和锁相关的脚本可以查看锁的一些明细。
脚本内容如下:
connect / as SYSDBA
set echo off
spool create2.log
@?/rdbms/admin/catalog. &&
@?/rdbms/admin/catproc.
@?/rdbms/admin/dbmspool.sql
@?/rdbms/admin/catblock.
@?/rdbms/admin/caths.
@?/rdbms/admin/owminst.
@?/sqlplus/admin/plustrce.
connect SYSTEM/manager &
@?/sqlplus/admin/pupbld.
@?/sqlplus/admin/help/hlpbld.sql helpus.
6.创建额外的组件
安装JVM,XDB,statspack
--Install JVM
@?/javavm/install/initjvm.
@?/xdk/admin/initxml.
@?/xdk/admin/xmlja.
@?/rdbms/admin/catjava.
--Install XMLDB
@?/rdbms/admin/catqm.sql XDB SYSAUX TEMP
@?/rdbms/admin/catxdbj.
--Install statspack
define default_tablespace='USERS' --这个表空间可以根据需要来创建
define temporary_tablespace='temp'
define perfstat_password='perfstat'
@?/rdbms/admin/spcreate
7.创建相应的表空间和数据文件
这个部分,如果已经有类似的环境,需要和其他环境的配置保持一致,可以这样做。
select dbms_metadata.get_ddl('TABLESPACE', ts.tablespace_name) from dba_
直接生成创建语句,自己简单改一下路径就可以了。
生成的语句如下:
CREATE TABLESPACE "TEST_DATA" DATAFILE
& '/dbtestPT1/oracle/TEST/oracnt02/redolog_A2/redo/redo04A.log' SIZE
& '/dbtestPT1/oracle/TEST/oracnt04/redolog_B2/redo/redo04B.log' SIZE
& '/dbtestPT1/oracle/TEST/oradata01/ggs_data01.dbf' SIZE
& LOGGING ONLINE PERMANENT BLOCKSIZE 8192
& EXTENT MANAGEMENT LOCAL AUTOALLOCATE DEFAULT NOCOMPRESS &SEGMENT SPACE MANAGEM
8.数据库用户的创建
这个部分也可以省事些,参考其他的环境,生成一些脚本。
select dbms_metadata.get_ddl('USER',u.username) from dba_users u WHERE USERNAME like '%TEST%';
select dbms_metadata.get_granted_ddl('SYSTEM_GRANT',u.username) from dba_users u WHERE USERNAME like '%TEST%';
select dbms_metadata.get_granted_ddl('ROLE_GRANT',u.username) from dba_users u WHERE USERNAME like '%TEST%';
如果要得到比较完整的脚本,可以参考这个,也是别人分享的。贴在这。
set serveroutput on size 1000000
set verify off
undefine user_name
v_name varchar2(30) := upper('&user_name');
pragma exception_init( no_grant, -31608 );
dbms_metadata.set_transform_param(dbms_metadata.SESSION_TRANSFORM, 'SQLTERMINATOR', TRUE);
dbms_output.enable(1000000);
dbms_output.put_line(dbms_metadata.get_ddl('USER',v_name));
dbms_output.put_line(dbms_metadata.get_granted_ddl('SYSTEM_GRANT',v_name));
when no_grant then dbms_output.put_line('– No system privs granted');
dbms_output.put_line(dbms_metadata.get_granted_ddl('ROLE_GRANT',v_name));
when no_grant then dbms_output.put_line('– No role privs granted');
dbms_output.put_line(dbms_metadata.get_granted_ddl('OBJECT_GRANT',v_name));
when no_grant then dbms_output.put_line('– No object privs granted');
dbms_output.put_line(dbms_metadata.get_granted_ddl('TABLESPACE_QUOTA',v_name));
when no_grant then dbms_output.put_line('– No tablespace quota specified');
dbms_output.put_line(dbms_metadata.get_granted_ddl('DEFAULT_ROLE', v_name ));
when others then
if SQLCODE = -31603 then dbms_output.put_line('– User does not exists');
9.网络,tns配置
这个部分比较常规,可以使用netca,netmgr来创建,也可以参考文档修改tnsnames.ora listener.ora
--删除数据库
可能创建数据库的大家都接触过,删除的工作其实也不是一帆风顺的。
drop database这个命令老是看到,就是没有环境敢这么干。测试一把。
ORACLE instance started.
Total System Global Area
Fixed Size & & & & & & & & &2243608 bytes
Variable Size & & & & & & bytes
Database Buffers & & & &
Redo Buffers & & & & & & &
Database mounted.
SQL> drop database TEST;
drop database TEST
& & & & & & & *
ERROR at line 1:
ORA-00933: SQL command not properly ended
重启到mount阶段。
SQL> alter data
Database altered.
SQL> drop database TEST;
drop database TEST
& & & & & & & *
ERROR at line 1:
ORA-00933: SQL command not properly ended
SQL>--要执行还是不容易的。
drop database
ERROR at line 1:
ORA-12719: operation requires database is in RESTRICTED mode
SQL> alter system enabl
System altered.
Database dropped.
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> show parameter insta
SP2-0640: Not connected
阅读(140) | 评论(0) | 转发(0) |
相关热门文章
给主人留下些什么吧!~~
请登录后评论。后使用快捷导航没有帐号?
查看: 541|回复: 0
误删除了一张表,请使用备份+归档来将数据库恢复到删除表之前的状态。(不完全恢复)
注册会员, 积分 66, 距离下一级还需 134 积分
论坛徽章:1
假设在有最后一次全库备份之后,你误删除了一张表,请使用备份+归档来将数据库恢复到删除表之前的状态。(不完全恢复) 进入Rman做全库备份 [@leonarding1backup]$rman target / Recovery Manager:Release 11.2.0.1.0 -Production on Tue Apr 30 11:08:29 2013 Copyright (c), Oracle and/or itsaffiliates. All rights reserved. connected totarget database: LEO1(DBID=) RMAN& backupfull database format
'/u02/app/oracle/backup/full_bk1_%u%p%s.rmn'includecurrent controlfile plus archivelog format'/u02/app/oracle/backup/arch_bk1_%u%p%s.rmn' 2& 3& 4&
Starting backup at30-APR-13 current logarchived using targetdatabase control file insteadof recovery catalog allocated channel:ORA_DISK_1 channelORA_DISK_1: SID=22 device type=DISK RMAN-00571:=========================================================== RMAN-00569:=============== ERROR MESSAGESTACK FOLLOWS =============== RMAN-00571:=========================================================== RMAN-03002:failure of backup plusarchivelog command at 04/30/:27 RMAN-06059:expected archived log not found,loss of archived log compromisesrecoverability ORA-19625: erroridentifying file/u02/app/oracle/archdata/1_75_.dbf ORA-27037: unableto obtain file status Linux-x86_64Error: 2: No such file ordirectory Additionalinformation: 3 75号归档日志缺失,Rman在操作系统上找不到对应的日志文件 当手工删除了归档日志以后,Rman备份会检测到日志缺失,从而无法进一步继续执行。
所以此时需要手工执行crosscheck过程,之后Rman备份可以恢复正常 RMAN& cros 交叉检查,有3个日志被手工删除 released channel:ORA_DISK_1 allocated channel:ORA_DISK_1 channelORA_DISK_1: SID=22 device type=DISK validation failedfor archived log archivedlog filename=/u02/app/oracle/archdata/1_75_.dbf RECID=9STAMP= validation failedfor archived log archivedlog filename=/u02/app/oracle/archdata/1_76_.dbf RECID=7STAMP= validation failedfor archived log archivedlog filename=/u02/app/oracle/archdata/1_77_.dbf RECID=8STAMP= validationsucceeded for archived log archived logfilename=/u02/app/oracle/archdata/1_1_.dbf RECID=10 STAMP= validationsucceeded for archived log archived logfilename=/u02/app/oracle/archdata/1_2_.dbf RECID=11 STAMP= validationsucceeded for archived log archived logfilename=/u02/app/oracle/archdata/1_3_.dbf RECID=12 STAMP= validationsucceeded for archived log archived logfilename=/u02/app/oracle/archdata/1_4_.dbf RECID=13 STAMP= validationsucceeded for archived log archived logfilename=/u02/app/oracle/archdata/1_5_.dbf RECID=14 STAMP= validationsucceeded for archived log archived logfilename=/u02/app/oracle/archdata/1_6_.dbf RECID=15 STAMP= validationsucceeded for archived log archived logfilename=/u02/app/oracle/archdata/1_7_.dbf RECID=16 STAMP= validationsucceeded for archived log archived logfilename=/u02/app/oracle/archdata/1_8_.dbf RECID=17 STAMP= validationsucceeded for archived log archived logfilename=/u02/app/oracle/archdata/1_9_.dbf RECID=18 STAMP= validationsucceeded for archived log archived logfilename=/u02/app/oracle/archdata/1_10_.dbf RECID=19 STAMP= validationsucceeded for archived log archived logfilename=/u02/app/oracle/archdata/1_11_.dbf RECID=20 STAMP= validationsucceeded for archived log archived logfilename=/u02/app/oracle/archdata/1_12_.dbf RECID=21 STAMP= validationsucceeded for archived log archived logfilename=/u02/app/oracle/archdata/1_13_.dbf RECID=22 STAMP= validationsucceeded for archived log archived logfilename=/u02/app/oracle/archdata/1_14_.dbf RECID=23 STAMP= validationsucceeded for archived log archived logfilename=/u02/app/oracle/archdata/1_15_.dbf RECID=24 STAMP= validationsucceeded for archived log archived logfilename=/u02/app/oracle/archdata/1_16_.dbf RECID=25 STAMP= validationsucceeded for archived log archived logfilename=/u02/app/oracle/archdata/1_17_.dbf RECID=26 STAMP= validationsucceeded for archived log archived logfilename=/u02/app/oracle/archdata/1_18_.dbf RECID=27 STAMP= validationsucceeded for archived log archived logfilename=/u02/app/oracle/archdata/1_19_.dbf RECID=28 STAMP= validationsucceeded for archived log archived logfilename=/u02/app/oracle/archdata/1_20_.dbf RECID=29 STAMP= validationsucceeded for archived log archived logfilename=/u02/app/oracle/archdata/1_1_.dbf RECID=30 STAMP= validationsucceeded for archived log archived logfilename=/u02/app/oracle/archdata/1_2_.dbf RECID=31 STAMP= validationsucceeded for archived log archived logfilename=/u02/app/oracle/archdata/1_3_.dbf RECID=32 STAMP= validationsucceeded for archived log archived logfilename=/u02/app/oracle/archdata/1_4_.dbf RECID=33 STAMP= Crosschecked 27objects RMAN& deleteex 删除所有过期归档日志 released channel:ORA_DISK_1 allocated channel:ORA_DISK_1 channelORA_DISK_1: SID=22 device type=DISK List of ArchivedLog Copies for databasewith db_unique_name LEO1 =====================================================================
Key Thrd Seq S Low Time
------- ----------- - --------- 9 1 75 X 26-APR-13 Name:/u02/app/oracle/archdata/1_75_.dbf
7 1 76 X 26-APR-13 Name:/u02/app/oracle/archdata/1_76_.dbf
8 1 77 X 26-APR-13 Name:/u02/app/oracle/archdata/1_77_.dbf Do you really wantto delete the aboveobjects (enter YES or NO)? y 75 76 77号日志被删除 deleted archivedlog archived logfilename=/u02/app/oracle/archdata/1_75_.dbf RECID=9 STAMP= deleted archivedlog archived log filename=/u02/app/oracle/archdata/1_76_.dbfRECID=7 STAMP= deleted archivedlog archived logfilename=/u02/app/oracle/archdata/1_77_.dbf RECID=8 STAMP= Deleted 3 EXPIREDobjects
RMAN& backup fulldatabase format 现在Rman备份可以恢复正常,同时删除备份过的归档日志 '/u02/app/oracle/backup/full_bk1_%u%p%s.rmn'includecurrent controlfile plus archivelogformat'/u02/app/oracle/backup/arch_bk1_%u%p%s.rmn'2& 3&4&
Starting backup at30-APR-13 current logarchived using channelORA_DISK_1 channelORA_DISK_1: starting archived logbackup set channelORA_DISK_1: specifying archivedlog(s) in backup set input archived logthread=1 sequence=1RECID=10 STAMP= input archived logthread=1 sequence=2RECID=11 STAMP= input archived logthread=1 sequence=3RECID=12 STAMP= input archived logthread=1 sequence=4RECID=13 STAMP= input archived logthread=1 sequence=5RECID=14 STAMP= input archived logthread=1 sequence=6RECID=15 STAMP= input archived logthread=1 sequence=7RECID=16 STAMP= input archived logthread=1 sequence=8RECID=17 STAMP= input archived logthread=1 sequence=9RECID=18 STAMP= input archived logthread=1 sequence=10RECID=19 STAMP= input archived logthread=1 sequence=11RECID=20 STAMP= input archived logthread=1 sequence=12RECID=21 STAMP= input archived logthread=1 sequence=13RECID=22 STAMP= input archived logthread=1 sequence=14RECID=23 STAMP= input archived logthread=1 sequence=15RECID=24 STAMP= input archived logthread=1 sequence=16RECID=25 STAMP= input archived logthread=1 sequence=17RECID=26 STAMP= input archived logthread=1 sequence=18RECID=27 STAMP= input archived logthread=1 sequence=19RECID=28 STAMP= channelORA_DISK_1: starting piece 1 at30-APR-13 channelORA_DISK_1: finished piece 1 at30-APR-13 piecehandle=/u02/app/oracle/backup/arch_bk1_0co8cds4112.rmntag=TAG324comment=NONE channelORA_DISK_1: backup set complete,elapsed time: 00:00:07 channelORA_DISK_1: deleting archived log(s) archived logfilename=/u02/app/oracle/archdata/1_1_.dbf RECID=10 STAMP= archived logfilename=/u02/app/oracle/archdata/1_2_.dbf RECID=11 STAMP= archived logfilename=/u02/app/oracle/archdata/1_3_.dbf RECID=12 STAMP= archived logfilename=/u02/app/oracle/archdata/1_4_.dbf RECID=13 STAMP= archived logfilename=/u02/app/oracle/archdata/1_5_.dbf RECID=14 STAMP= archived logfilename=/u02/app/oracle/archdata/1_6_.dbf RECID=15 STAMP= archived logfilename=/u02/app/oracle/archdata/1_7_.dbf RECID=16 STAMP= archived log filename=/u02/app/oracle/archdata/1_8_.dbfRECID=17 STAMP= archived logfilename=/u02/app/oracle/archdata/1_9_.dbf RECID=18 STAMP= archived logfilename=/u02/app/oracle/archdata/1_10_.dbf RECID=19 STAMP= archived log filename=/u02/app/oracle/archdata/1_11_.dbfRECID=20 STAMP= archived logfilename=/u02/app/oracle/archdata/1_12_.dbf RECID=21 STAMP= archived logfilename=/u02/app/oracle/archdata/1_13_.dbf RECID=22 STAMP= archived logfilename=/u02/app/oracle/archdata/1_14_.dbf RECID=23 STAMP= archived logfilename=/u02/app/oracle/archdata/1_15_.dbf RECID=24 STAMP= archived logfilename=/u02/app/oracle/archdata/1_16_.dbf RECID=25 STAMP= archived logfilename=/u02/app/oracle/archdata/1_17_.dbf RECID=26 STAMP= archived logfilename=/u02/app/oracle/archdata/1_18_.dbf RECID=27 STAMP= archived logfilename=/u02/app/oracle/archdata/1_19_.dbf RECID=28 STAMP= channelORA_DISK_1: starting archived logbackup set channelORA_DISK_1: specifying archivedlog(s) in backup set input archived logthread=1 sequence=1RECID=30 STAMP= channelORA_DISK_1: starting piece 1 at30-APR-13 channelORA_DISK_1: finished piece 1 at30-APR-13 piecehandle=/u02/app/oracle/backup/arch_bk1_0do8cdsc113.rmntag=TAG324comment=NONE channelORA_DISK_1: backup set complete,elapsed time: 00:00:01 channelORA_DISK_1: deleting archived log(s) archived logfilename=/u02/app/oracle/archdata/1_1_.dbf RECID=30 STAMP= channelORA_DISK_1: starting archived logbackup set channelORA_DISK_1: specifying archivedlog(s) in backup set input archived logthread=1 sequence=20 RECID=29STAMP= channelORA_DISK_1: starting piece 1 at30-APR-13 channelORA_DISK_1: finished piece 1 at30-APR-13 piecehandle=/u02/app/oracle/backup/arch_bk1_0eo8cdsd114.rmntag=TAG324comment=NONE channelORA_DISK_1: backup set complete,elapsed time: 00:00:01 channelORA_DISK_1: deleting archived log(s) archived logfilename=/u02/app/oracle/archdata/1_20_.dbf RECID=29 STAMP= channelORA_DISK_1: starting archived logbackup set channelORA_DISK_1: specifying archivedlog(s) in backup set input archived logthread=1 sequence=2RECID=31 STAMP= input archived logthread=1 sequence=3RECID=32 STAMP= input archived logthread=1 sequence=4RECID=33 STAMP= input archived logthread=1 sequence=5 RECID=34STAMP= channelORA_DISK_1: starting piece 1 at30-APR-13 channelORA_DISK_1: finished piece 1 at30-APR-13 piecehandle=/u02/app/oracle/backup/arch_bk1_0fo8cdse115.rmntag=TAG324comment=NONE channelORA_DISK_1: backup set complete,elapsed time: 00:00:01 channelORA_DISK_1: deleting archived log(s) archived logfilename=/u02/app/oracle/archdata/1_2_.dbf RECID=31 STAMP= archived logfilename=/u02/app/oracle/archdata/1_3_.dbf RECID=32 STAMP= archived logfilename=/u02/app/oracle/archdata/1_4_.dbf RECID=33 STAMP= archived logfilename=/u02/app/oracle/archdata/1_5_.dbf RECID=34 STAMP= Finished backup at30-APR-13
Starting backup at30-APR-13 using channelORA_DISK_1 channelORA_DISK_1: starting full datafilebackup set channelORA_DISK_1: specifying datafile(s)in backup set input datafilefile number=00001name=/u02/app/oracle/oradata/LEO1/system01.dbf input datafilefile number=00002name=/u02/app/oracle/oradata/LEO1/sysaux01.dbf input datafilefile number=00003name=/u02/app/oracle/oradata/LEO1/undotbs01.dbf input datafile filenumber=00005name=/u02/app/oracle/oradata/LEO1/leo1.dbf input datafilefile number=00004name=/u02/app/oracle/oradata/LEO1/users01.dbf channelORA_DISK_1: starting piece 1 at30-APR-13 channelORA_DISK_1: finished piece 1 at30-APR-13 piecehandle=/u02/app/oracle/backup/full_bk1_0go8cdsg116.rmntag=TAG336comment=NONE channelORA_DISK_1: backup set complete,elapsed time: 00:01:25 channelORA_DISK_1: starting full datafilebackup set channelORA_DISK_1: specifying datafile(s)in backup set including currentcontrol file in backup set channelORA_DISK_1: starting piece 1 at30-APR-13 channelORA_DISK_1: finished piece 1 at 30-APR-13 piecehandle=/u02/app/oracle/backup/full_bk1_0ho8cdv5117.rmntag=TAG336comment=NONE channel ORA_DISK_1:backup set complete,elapsed time: 00:00:01 Finished backup at30-APR-13
Starting backup at30-APR-13 current logarchived using channelORA_DISK_1 channelORA_DISK_1: starting archived logbackup set channelORA_DISK_1: specifying archivedlog(s) in backup set input archived logthread=1 sequence=6RECID=35 STAMP= channelORA_DISK_1: starting piece 1 at30-APR-13 channelORA_DISK_1: finished piece 1 at30-APR-13 piecehandle=/u02/app/oracle/backup/arch_bk1_0io8cdv7118.rmntag=TAG503comment=NONE channelORA_DISK_1: backup set complete,elapsed time: 00:00:01 channelORA_DISK_1: deleting archived log(s) archived logfilename=/u02/app/oracle/archdata/1_6_.dbf RECID=35 STAMP= Finished backup at30-APR-13
Starting ControlFile and SPFILE Autobackupat 30-APR-13 piecehandle=/u02/app/oracle/backup/control/cf_c--comment=NONE Finished ControlFile and SPFILE Autobackupat 30-APR-13 我们现在进入数据库创建一个表leo1并插入三条记录 SYS@LEO1&createtable leo1 (namevarchar2(20),age number,riqi date); Table created. SYS@LEO1&insertinto leo1values('leonarding',28,sysdate); 1 row created. SYS@LEO1&insertinto leo1values('sun_vn',26,sysdate); 1 row created. SYS@LEO1&insertinto leo1values('tiger',18,sysdate); 1 row created. SYS@LEO1& Commit complete. SYS@LEO1&select* from leo1; 完成 NAME AGE RIQI ------------------------------ --------- leonarding 28 30-APR-13 sun_vn 26 30-APR-13 tiger 18 30-APR-13 SYS@LEO1&selectgroup#,members,bytes,archived,sequence#,statusfrom v$ GROUP# MEMBERS BYTES ARC SEQUENCE# STATUS -------------------- ---------- ------------- ---------------- 1 2
NO 7 CURRENT 2 2
YES 5 INACTIVE 5 2
YES 6 INACTIVE 我们创建表和插入信息是写入当前日志组1 SYS@LEO1&alters 切换日志组 System altered. SYS@LEO1&alters System altered. SYS@LEO1&selectgroup#,members,bytes,archived,sequence#,statusfrom v$ GROUP# MEMBERS BYTES ARC SEQUENCE# STATUS -------------------- ---------- ------------- ---------------- 1 2
YES 7 INACTIVE 2 2
YES 8 INACTIVE 5 2
NO 9 CURRENT 现在组1已经完成归档,如果我们此时勿删除了leo1表,我们可以把数据库恢复到7号归档日志的那一点,就可以恢复勿删除的leo1表了。我们顺便把当前redolog日志也损坏了,看看可不可以扶起数据库来。 SYS@LEO1&droptable leo1 删除表 我们删除第五组的2个成员 [oracle@leonarding1LEO1]$ rm -rf redo05.log [oracle@leonarding1LEO1]$ cd disk2/ [oracle@leonarding1disk2]$ rm -rfredo05_b.log SYS@LEO1&startup ORACLE instancestarted. Total SystemGlobal Area
bytes Fixed Size 2214456 bytes Variable Size
bytes DatabaseBuffers
bytes Redo Buffers 8241152 bytes Database mounted. ORA-00313: openfailed for members of loggroup 5 of thread 1 ORA-00312: onlinelog 5 thread 1: '/u02/app/oracle/oradata/LEO1/disk2/redo05_b.log' ORA-27037: unableto obtain file status Linux-x86_64Error: 2: No such file ordirectory Additionalinformation: 3 ORA-00312: onlinelog 5 thread 1:'/u02/app/oracle/oradata/LEO1/redo05.log' ORA-27037: unableto obtain file status Linux-x86_64Error: 2: No such file ordirectory Additionalinformation: 3 找不到第五组redo,实际上已经被我们删除了,进入rman进行恢复操作 [oracle@leonarding1backup]$ rman target / Recovery Manager:Release 11.2.0.1.0 -Production on Tue Apr 30 12:47:55 2013 Copyright (c), Oracle and/or itsaffiliates. All rights reserved. connected totarget database: LEO1(DBID=, not open) RMAN&
Starting restoreat 30-APR-13 using targetdatabase control file insteadof recovery catalog allocated channel:ORA_DISK_1 channelORA_DISK_1: SID=133 device type=DISK
channelORA_DISK_1: starting datafile backupset restore channelORA_DISK_1: specifying datafile(s)to restore from backup set channelORA_DISK_1: restoring datafile 00001to/u02/app/oracle/oradata/LEO1/system01.dbf channelORA_DISK_1: restoring datafile 00002to/u02/app/oracle/oradata/LEO1/sysaux01.dbf channelORA_DISK_1: restoring datafile 00003to /u02/app/oracle/oradata/LEO1/undotbs01.dbf channelORA_DISK_1: restoring datafile 00004to/u02/app/oracle/oradata/LEO1/users01.dbf channelORA_DISK_1: restoring datafile 00005to /u02/app/oracle/oradata/LEO1/leo1.dbf channelORA_DISK_1: reading from backuppiece /u02/app/oracle/backup/full_bk1_0go8cdsg116.rmn channelORA_DISK_1: piecehandle=/u02/app/oracle/backup/full_bk1_0go8cdsg116.rmntag=TAG336 channelORA_DISK_1: restored backup piece 1 channelORA_DISK_1: restore complete,elapsed time: 00:02:05 Finished restoreat 30-APR-13 我们只需恢复到7号归档日志状态点,就可以找回我们删除了的leo1表 RMAN& recoverdatabase until sequence 7thread 1;
Starting recoverat 30-APR-13 using channelORA_DISK_1
starting mediarecovery
channelORA_DISK_1: starting archived logrestore to default destination channel ORA_DISK_1:restoring archived log archived logthread=1 sequence=6 channelORA_DISK_1: reading from backuppiece/u02/app/oracle/backup/arch_bk1_0io8cdv7118.rmn channelORA_DISK_1: piecehandle=/u02/app/oracle/backup/arch_bk1_0io8cdv7118.rmntag=TAG503 channelORA_DISK_1: restored backup piece 1 channelORA_DISK_1: restore complete,elapsed time: 00:00:01 archived logfilename=/u02/app/oracle/archdata/1_6_.dbf thread=1 sequence=6 media recoverycomplete, elapsed time:00:00:01 Finished recoverat 30-APR-13 SYS@LEO1&alterdat Database altered. resetlogs做的几件事: 1)数据文件头scn号为准,同步控制文件和在线日志文件scn号 2)重新创建redolog日志(创建一个空日志),重置为unused 3)重置归档日志序号从1开始编码 4)让数据库重新进入一个新的生命周期 SYS@LEO1&select* from leo1;
NAME AGE RIQI ------------------------------ --------- leonarding 28 30-APR-13 sun_vn 26 30-APR-13 tiger 18 30-APR-13 这个表存在说明应用了sequence为7的归档 小结:到此我们的系列恢复实验完美完成,里面阐述了各种不同环境下的恢复测试,简明了重做日志和归档日志关系,在什么情况下可以恢复到什么级别,牢实掌握如上信息,可以让你遇事不慌张事半功倍。控制文件恢复,重做日志恢复,完全恢复,不完全恢复,备份。

我要回帖

更多关于 mysql删掉数据库 的文章

 

随机推荐