wangluo010 发表于 2015-11-9 12:02:33

OCM_Session1_6_Log File Management

6. Log File Management 6.1 Due to the expected high volume of transactions. the database should have the following configuration:6.1.1 A minimum of 5 redo log groups.6.1.2 Each redo log group should not be a single point of failure.6.1.3 File size of 100MB6.1.4 Specify the location such that it minimizes contention and reduces the risk of a single point of failure in case of disk driver failure 6.2 Triplex the controlfile to minimize recovery in case of disk drive failure.

6. Log File Management

[*] 6.1 Due to the expected high volume of transactions. the database should have the following configuration:
[*] 6.1.1 A minimum of 5 redo log groups. 5个组
[*] 6.1.2 Each redo log group should not be a single point of failure.每个组至少2个成员,最好分别在两个盘上,不会出现单点故障
[*]6.1.3 File size of 100MB 文件大小100M
[*] 6.1.4 Specify the location such that it minimizes contention and reduces the risk of a single point of failure in case of disk driver failure
         每个组有两个成员,两个成员在两个磁盘,最小化争用,最小风险。

参考联机文档:Administrator's Guide ==> 6 Managing the Redo Log==>Creating Redo Log Members,Creating Redo LogGroupshttp://docs.oracle.com/cd/B19306_01/server.102/b14231/onlineredo.htm#i1007497

ALTER DATABASE ADD LOGFILE MEMBER '/oracle/dbs/log2b.rdo' TO GROUP 2;
ALTER DATABASE ADD LOGFILE GROUP 4 ('/oracle/dbs/log1c.rdo', '/oracle/dbs/log2c.rdo') SIZE 100m;
从题意可知,有5个日志组,每个日志组至少包含两个成员,每个成员都不在相同的磁盘里,文件大小为100M。
操作如下:
SQL> select * from v$logfile;
    GROUP# STATUSTYPE    MEMBER                                             IS_---------- ------- ------- -------------------------------------------------- ---         1 STALE   ONLINE/u01/app/oracle/oradata/PROD/Disk1/redo01.log      NO         2 STALE   ONLINE/u01/app/oracle/oradata/PROD/Disk1/redo02.log      NO         3         ONLINE/u01/app/oracle/oradata/PROD/Disk1/redo03.log      NO
SQL> select * from v$log;
    GROUP#    THREAD#SEQUENCE#      BYTES    MEMBERS ARC STATUS         FIRST_CHANGE# FIRST_TIM---------- ---------- ---------- ---------- ---------- --- ---------------- ------------- ---------         1          1          4104857600          1 NOINACTIVE                117224 18-MAR-14         2          1          5104857600          1 NOINACTIVE                168127 18-MAR-14         3          1          6104857600          1 NOCURRENT               199956 19-MAR-14
目前已经有3个组,每个组里有一个成员,故现在向每个组分别增加一个成员,另外再增加两个组4和5,组里有2个成员。
SQL> alter database add logfile member '/u01/app/oracle/oradata/PROD/Disk2/redo01_1.log' to group 1;
Database altered.
SQL> alter database add logfile member '/u01/app/oracle/oradata/PROD/Disk2/redo02_1.log' to group 2;
Database altered.
SQL> alter database add logfile member '/u01/app/oracle/oradata/PROD/Disk2/redo03_1.log' to group 3;
Database altered.
SQL> alter database add logfile group 4 ('/u01/app/oracle/oradata/PROD/Disk1/redo04.log','/u01/app/oracle/oradata/PROD/Disk2/redo04_1.log') size 100m;
Database altered.
SQL> alter database add logfile group 5 ('/u01/app/oracle/oradata/PROD/Disk1/redo05.log','/u01/app/oracle/oradata/PROD/Disk2/redo05_1.log') size 100m;
Database altered.
SQL> select * from v$log;
    GROUP#    THREAD#SEQUENCE#      BYTES    MEMBERS ARC STATUS         FIRST_CHANGE# FIRST_TIM---------- ---------- ---------- ---------- ---------- --- ---------------- ------------- ---------         1          1          4104857600          2 NOINACTIVE                117224 18-MAR-14         2          1          5104857600          2 NOINACTIVE                168127 18-MAR-14         3          1          6104857600          2 NOCURRENT               199956 19-MAR-14         4          1          0104857600          2 YES UNUSED                     0         5          1          0104857600          2 YES UNUSED                     0
SQL> select * from v$logfile;
    GROUP# STATUSTYPE    MEMBER                                             IS_---------- ------- ------- -------------------------------------------------- ---         1 STALE   ONLINE/u01/app/oracle/oradata/PROD/Disk1/redo01.log      NO         2 STALE   ONLINE/u01/app/oracle/oradata/PROD/Disk1/redo02.log      NO         3         ONLINE/u01/app/oracle/oradata/PROD/Disk1/redo03.log      NO         1 INVALID ONLINE/u01/app/oracle/oradata/PROD/Disk2/redo01_1.log    NO         2 INVALID ONLINE/u01/app/oracle/oradata/PROD/Disk2/redo02_1.log    NO         3 INVALID ONLINE/u01/app/oracle/oradata/PROD/Disk2/redo03_1.log    NO         4         ONLINE/u01/app/oracle/oradata/PROD/Disk1/redo04.log      NO         4         ONLINE/u01/app/oracle/oradata/PROD/Disk2/redo04_1.log    NO         5         ONLINE/u01/app/oracle/oradata/PROD/Disk1/redo05.log      NO         5         ONLINE/u01/app/oracle/oradata/PROD/Disk2/redo05_1.log    NO
10 rows selected.

或者使用一下查询:查询结果有10行,每个GROUP#有两行,BYTES是100M
SQL> select a.group#,member,bytes/1024/1024 from v$logfile a,v$log b where a.group#=b.group# order by a.group#;
    GROUP# MEMBER                                             BYTES/1024/1024---------- -------------------------------------------------- ---------------         1 /u01/app/oracle/oradata/PROD/Disk2/redo01_1.log                100         1 /u01/app/oracle/oradata/PROD/Disk1/redo01.log                  100         2 /u01/app/oracle/oradata/PROD/Disk1/redo02.log                  100         2 /u01/app/oracle/oradata/PROD/Disk2/redo02_1.log                100         3 /u01/app/oracle/oradata/PROD/Disk2/redo03_1.log                100         3 /u01/app/oracle/oradata/PROD/Disk1/redo03.log                  100         4 /u01/app/oracle/oradata/PROD/Disk1/redo04.log                  100         4 /u01/app/oracle/oradata/PROD/Disk2/redo04_1.log                100         5 /u01/app/oracle/oradata/PROD/Disk2/redo05_1.log                100         5 /u01/app/oracle/oradata/PROD/Disk1/redo05.log                  100
10 rows selected.
SQL>



[*] 6.2 Triplex the controlfile to minimize recovery in case of disk drive failure.
         三元化控制文件,即控制文件有三个。

SQL> show parameter control
NAME                                 TYPE      VALUE------------------------------------ ----------- ------------------------------control_file_record_keep_time      integer   7control_files                        string      /u01/app/oracle/oradata/PROD/D                                                 isk1/control01.ctl, /u01/app/o                                                 racle/oradata/PROD/Disk1/contr                                                 ol02.ctl, /u01/app/oracle/orad                                                 ata/PROD/Disk1/control03.ctlSQL> alter system set control_files='/u01/app/oracle/oradata/PROD/Disk1/control01.ctl','/u01/app/oracle/oradata/PROD/Disk2/control02.ctl','/u01/app/oracle/oradata/PROD/Disk3/control03.ctl' scope=spfile;
System altered.
SQL> shutdown immediateDatabase closed.Database dismounted.ORACLE instance shut down.
$ cd /u01/app/oracle/oradata/PROD/Disk1/$ lltotal 1878124-rw-r----- 1 oracle oinstall   6832128 Mar 19 13:22 control01.ctl-rw-r----- 1 oracle oinstall   6832128 Mar 19 13:22 control02.ctl-rw-r----- 1 oracle oinstall   6832128 Mar 19 13:22 control03.ctl-rw-r----- 1 oracle oinstall 419438592 Mar 19 13:22 example01.dbf-rw-r----- 1 oracle oinstall41951232 Mar 19 13:22 indx01.dbf-rw-r----- 1 oracle oinstall50339840 Mar 19 13:22 oltp01.dbf-rw-r----- 1 oracle oinstall 104858112 Mar 19 09:09 redo01.log-rw-r----- 1 oracle oinstall 104858112 Mar 19 09:09 redo02.log-rw-r----- 1 oracle oinstall 104858112 Mar 19 13:22 redo03.log-rw-r----- 1 oracle oinstall 104858112 Mar 19 13:11 redo04.log-rw-r----- 1 oracle oinstall 104858112 Mar 19 13:11 redo05.log-rw-r----- 1 oracle oinstall 340795392 Mar 19 13:22 sysaux01.dbf-rw-r----- 1 oracle oinstall 340795392 Mar 19 13:22 system01.dbf-rw-r----- 1 oracle oinstall20979712 Mar 18 10:57 temp01.dbf-rw-r----- 1 oracle oinstall20979712 Mar 19 09:21 temp11.dbf-rw-r----- 1 oracle oinstall20979712 Mar 19 09:22 temp12.dbf-rw-r----- 1 oracle oinstall10493952 Mar 19 13:22 tools01.dbf-rw-r----- 1 oracle oinstall 121643008 Mar 19 13:22 undotbs01.dbf-rw-r----- 1 oracle oinstall50339840 Mar 19 13:22 users01.dbf$ mv control02.ctl /u01/app/oracle/oradata/PROD/Disk2/control02.ctl$ mv control03.ctl /u01/app/oracle/oradata/PROD/Disk3/control03.ctl

SQL> startupORACLE instance started.
Total System Global Area524288000 bytesFixed Size                  1220360 bytesVariable Size             159383800 bytesDatabase Buffers          360710144 bytesRedo Buffers                2973696 bytesDatabase mounted.Database opened.
查询结果有三行,分别在DISK1至DISK5的三个目录中,这里分别在1,2,3Disk中。SQL> select name from v$controlfile;
NAME------------------------------------------------------------/u01/app/oracle/oradata/PROD/Disk1/control01.ctl/u01/app/oracle/oradata/PROD/Disk2/control02.ctl/u01/app/oracle/oradata/PROD/Disk3/control03.ctl

         版权声明:本文为博主原创文章,未经博主允许不得转载。
页: [1]
查看完整版本: OCM_Session1_6_Log File Management