Home > Database > Mysql Tutorial > Oracle 增加日志组,日志成员的一些命令

Oracle 增加日志组,日志成员的一些命令

WBOY
Release: 2016-06-07 17:14:45
Original
1399 people have browsed it

Oracle 增加日志组,日志成员的一些命令2012-05-14 13:421、增加日志组: alter database add logfile group 4

Oracle 增加日志组,日志成员的一些命令
2012-05-14 13:42
1、增加日志组:

alter database add logfile group 4 '/oradata/oracle/oradata/oracle_sid/redo04.log' size 100M;

2、改变日志组的大小(

首先看下归档状态:

SQL> select group#,thread#,members,archived,status from v$log;
 
    GROUP#    THREAD#    MEMBERS ARC STATUS
---------- ---------- ---------- --- ----------------
         1          1          1 YES INACTIVE
         2          1          1 YES INACTIVE
         3          1          1 NO  CURRENT
         4          1          1 YES UNUSED

4 rows selected.

其次DROP GROUP 1(此时最好是别DROP GROUP3,至于什么后果,,我没有往这方向TEST。)

SQL> alter database drop logfile group 1;
 
Database altered.

再删除redo01.log

SQL> !rm /oradata/oracle/oradata/NC5X/redo01.log

最后增加redo01.log:

SQL> alter database add logfile group 1 '/oradata/oracle/oradata/ORACLE_SID/redo01.log' size 100M;

SQL> select group#,thread#,members,archived,status from v$log;
 
    GROUP#    THREAD#    MEMBERS ARC STATUS
---------- ---------- ---------- --- ----------------
         1          1          1 YES UNUSED
         2          1          1 YES INACTIVE
         3          1          1 NO  CURRENT
         4          1          1 YES UNUSED

4 rows selected.

此时,切换下日志:

SQL> alter system switch logfile;
 
System altered.

注意:alter system switch logfile 和alter system archive log current这两个切换的区别。

alter system switch logfile 是不等待归档完成就switch logfile。如果database尚未开启archive log mode。那用这个切换是毋庸置疑了。另外,也是对单实例database和RAC模式下当前实例执行日志切换。

而alter system archive log current则需要等待归档完成才switch logfile。会对中所有实例执行日志切换。

整体上说来,在自动归档的库里,两个命令的所产生的结果几乎一样。有区别的是alter system archive log current所用的时间会比alter system switch logfile 的长。

3、增加日志组成员:

SQL> alter database add logfile member '/oraback/logbackup/redo01_b.log' to group 1;
 
Database altered.

注意:alter 语句中不可设定redo01_b.log的大小。


SQL> alter database add logfile member '/oraback/logbackup/redo01_b.log' size 100M to group 1;
alter database add logfile member '/oraback/logbackup/redo01_b.log' size 100M to group 1
                                                                    *
ERROR at line 1:
ORA-00946: missing TO keyword。

Alter语句运行之后,生成的Redo01_b.log的大小与redo01.log的大小一致。

路径可以选择与默认路径不一致。

最后,得声明一下:可以同时增加几个日志组。也可以同时增加几个日志组成员。语句格式如下:

ALTER DATABASE ADD LOGFILE '/LOCATION_DUEST/REDO01.LOG' SIZE 10M,''/LOCATION_DUEST/REDO02.LOG'  SIZE 10M... ...;依次类推。

增加成员也类似。不在赘述。

4、删除日志组及日志组成员:

原则:删除前必须遵守如下原则,每个实例必须至少有两个日志组;当一个组处于ACTIVE或者CURRENT的状态时不可删除;删除日志组的操作只对数据库进行更改,操作系统的文件尚未删除;当删除时适用DROP LOGFILE GROUP N语句时,此时GROUP N内的所有成员都将被删除。

ALTER DATABASE DROP LOGFILE GROUP N;

删除日志成员的原则:当你删除一个是该组中最后一个成员的时候,你不能删除此成员;当组的转台处于current的状态时,不能删除组成员;在归档模式下,必须得归档之后才能删除;删除日志组成员的操作只对数据库进行更改,操作系统的文件尚未删除

ALTER DATABASE DROP LOGFILE MEMBER '/LOCATION_DUST/REDO0N_N.LOG';

linux

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template