常用SQL
以下是常见操作,若在RAC下则需要添加线程号:
-- 增加一个日志文件组:
ALTER DATABASE ADD LOGFILE [GROUP N] '文件全名' SIZE 10M;
ALTER DATABASE ADD LOGFILE THREAD 1 GROUP 4 ('+DATA','+FRA') SIZE 50M;
-- 在这个组上增加一个成员:
ALTER DATABASE ADD LOGFILE MEMBER '文件全名' TO GROUP N;
-- 在这个组上删除一个日志成员:
ALTER DATABASE DROP LOGFILE MEMBER '文件全名';
-- 删除整个日志组:
ALTER DATABASE DROP LOGFILE GROUP N;
ALTER DATABASE DROP LOGFILE MEMBER '';
-- 重命名日志文件:
SQL> ho cp /u01/app/oracle/oradata/ora1024g/redo03.log /u01/app/oracle/oradata/ora1024g/redo04.log
SQL> alter database rename file '/u01/app/oracle/oradata/ora1024g/redo03.log' to '/u01/app/oracle/oradata/ora1024g/redo04.log';
-- 查询redo日志情况
select * from v$log;
col member format a80
select * from v$logfile order by group#;
在以上命令中,GROUP 可以不加,可以省略,Oracle会自动进行计算!!!
其它
-- 添加 redo
alter database add logfile group 4 'c:\oracle\oradata\orcl\redo04.log' size 100m;
alter database add logfile;
alter database add logfile [group n];
alter database add logfile member '<dir>' to group [n]
-- add logfile member这个方法仅使用未使用OMF的日志文件,对于已经运用了OMF的日志组,无法使用该功能添加日志文件/
alter database add logfile thread 1 group 4 ('+DATA','+FRA') size 50M;
-- alter database add standby logfile thread 1 group 5 ('+DATA','+FRA') size 50M ;
-- rac库可以在同一个实例下添加
alter database add logfile thread 1 group 7('+DATA_DG/querydb/redo07_1.log','+DATA_DG/querydb/redo07_2.log') size 1024m;
alter database add logfile thread 2 group 8('+DATA_DG/querydb/redo08_1.log','+DATA_DG/querydb/redo08_2.log') size 1024m;
-- 删除
alter database drop logfile group 4;
alter database drop logfile member '';
-- 清除未归档日志
ALTER DATABASE CLEAR UNARCHIVED LOGFILE GROUP 2;
-- 清空损坏的日志文件 成功执行前提:一致性关闭,解决ora-00392错误
ALTER DATABASE CLEAR LOGFILE GROUP 2;