删除日志组
如果想要删除DB中的某个日志组,比如下面的配置
-
SELECT GROUP#, ARCHIVED, STATUS FROM V$LOG;
-
-
GROUP# ARC STATUS
-
--------- --- ----------------
-
1 YES ACTIVE
-
2 NO CURRENT
-
3 YES INACTIVE
-
4 YES INACTIVE
可以用这个命令来删除
ALTER DATABASE DROP LOGFILE GROUP 3;
删除日志成员
如果某个日志组有多个成员,如下所示:
-
SQL> select member from v$logfile;
-
-
MEMBER
-
--------------------------------------------------------------------------------
-
C:\ORACLE\ORADATA\ORA10G\ONLINELOG\O1_MF_1_6Y993Y41_.LOG
-
C:\ORACLE\FLASH_RECOVERY_AREA\ORA10G\ONLINELOG\O1_MF_1_6Y993YBB_.LOG
-
C:\ORACLE\ORADATA\ORA10G\ONLINELOG\O1_MF_2_6Y993YGP_.LOG
-
C:\ORACLE\FLASH_RECOVERY_AREA\ORA10G\ONLINELOG\O1_MF_2_6Y993YLR_.LOG
-
C:\ORACLE\ORADATA\ORA10G\ONLINELOG\O1_MF_3_6Y993YRD_.LOG
-
C:\ORACLE\FLASH_RECOVERY_AREA\ORA10G\ONLINELOG\O1_MF_3_6Y993YX3_.LOG
可以用这个命令来删除某个成员
ALTER DATABASE DROP LOGFILE MEMBER '/oracle/dbs/log3c.rdo';
而如果某个成员属于活跃组(active),那么先要做一次日志切换:
ALTER SYSTEM SWITCH LOGFILE;
移动临时文件
查看文件状态
-
SQL> SELECT v.file#, t.file_name, v.status
-
2 FROM dba_temp_files t, v$tempfile v
-
3 WHERE t.file_id = v.file#;
-
-
FILE# FILE_NAME STATUS
-
---------- ------------------------- -------
-
1 /u01/temp01.dbf ONLINE
-
2 /u02/temp02.dbf ONLINE
-
3 /u02/temp03.dbf ONLINE
更改为OFFLINE
SQL> ALTER DATABASE TEMPFILE '/u01/temp01.dbf' OFFLINE;
复制文件到新的位置
SQL> !cp -p /u01/temp01.dbf /u02/temp01.dbf
修改临时文件配置
SQL> ALTER DATABASE RENAME FILE '/u01/temp01.dbf' TO '/u02/temp01.dbf';
改为ONLINE
SQL> ALTER DATABASE TEMPFILE '/u02/temp01.dbf' ONLINE;
删除旧文件
SQL> !rm -rf /u01/temp01.dbf
阅读(3092) | 评论(0) | 转发(1) |