控制文件丢失: alter database backup controlfile to traces; shutdown immediate; @j:\db\script\orcl_ora_ctl_bak (J:\oracle\product\10.2.0\admin\orcl\udump\orcl_ora_3028.trc) 日志文件丢失: recover database until cancel; alter database open resetlogs;
参考:How to Recover from Loss Of Online Redo Log And ORA-312 And ORA-313 (Doc ID 117481.1) 在线重做日志文件丢失后恢复的场景包括: 在线重做日志的配置:镜像或非镜像 介质故障的类型:临时或永久性 受故障影响的联机重做日志文件的状态类型:CURRENT,ACTIVE,UNARCHIVED或INACTIVE 在丢失archivelog文件之前,数据库是否正常关闭 1,丢失多member在线重做日志组成员后恢复 如果
1.确定当前使用的redo文件 SQL> select member from v$logfile where group# = ( select group# from v$log where status = 'CURRENT'); MEMBER -------------------------------------------------------------------------------- /home/oracle/oradata/orcl/redo02.log 2. 进行转
数据库一致性关闭下redo日志文件丢失的处理办法(归档和非归档都行) 1. inactive log 在一致性关闭后删除重启时可以在mount下(不丢失数据) alter database clear logfile group n; alter database open; 2. active log 在一致性关闭后状态会变成inactive(由ARCn归档) 处理方法如 inactive的方式一样,若状态还是active则: alter database clear unarchi
一.临时表空间文件.日志文件和口令文件都属于非关键性文件,因为这些文件丢失后并不会影响到整个数据库的完整性. 但是,当这些文件丢失后我们需要快速的找回这些文件.接下来我将模拟临时表空间文件.日志文件和口令文件丢失的情况. 二.如果属于 TEMP 表空间的临时文件丢失或损坏,则 TEMP 表空间将不可用.例如:在执行需要 TEMP 空间进行排序的 SQL 语句过程中,此问题将声明其为错误. 一般会用到临时表空间的场景有: 索引create或rebuild Order by 或 group by D
如果system 表空间的文件丢失,假设有备份的情况,可以恢复.数据库需要设置为mount 状态,然后restore/recover datafile 模拟实验: SQL> select name from v $ datafile; NAME-------------------------------------------------------------------- ------------------------------/u01/app/oracle/oradata/ORA11
有些时候需要将Oracle的多个数据文件以及日志文件重定位或者迁移到新的分区或新的位置,比如磁盘空间不足,或因为特殊需求.对于这种情形可以采取批量迁移的方式将多个数据文件或者日志文件实现一次性迁移.当然备份恢复也是其中的方式之一.本文主要描述如何使用批量方式来迁移数据文件,日志文件.如需要也可以将整个数据库迁移到新的位置以及重命名数据库. 1.环境及需求 robin@SZDB:~> cat /etc/issue Welcome to SUSE Linux Enterprise Server 10