zoukankan      html  css  js  c++  java
  • 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 100MB
      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
     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 Log Groups


    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# STATUS  TYPE    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          4  104857600          1 NO  INACTIVE                117224 18-MAR-14
             2          1          5  104857600          1 NO  INACTIVE                168127 18-MAR-14
             3          1          6  104857600          1 NO  CURRENT                 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          4  104857600          2 NO  INACTIVE                117224 18-MAR-14
             2          1          5  104857600          2 NO  INACTIVE                168127 18-MAR-14
             3          1          6  104857600          2 NO  CURRENT                 199956 19-MAR-14
             4          1          0  104857600          2 YES UNUSED                       0
             5          1          0  104857600          2 YES UNUSED                       0

    SQL> select * from v$logfile;

        GROUP# STATUS  TYPE    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     7
    control_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.ctl
    SQL> 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 immediate
    Database closed.
    Database dismounted.
    ORACLE instance shut down.

    [oracle@ocm1 Disk2]$ cd /u01/app/oracle/oradata/PROD/Disk1/
    [oracle@ocm1 Disk1]$ ll
    total 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 oinstall  41951232 Mar 19 13:22 indx01.dbf
    -rw-r----- 1 oracle oinstall  50339840 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 oinstall  20979712 Mar 18 10:57 temp01.dbf
    -rw-r----- 1 oracle oinstall  20979712 Mar 19 09:21 temp11.dbf
    -rw-r----- 1 oracle oinstall  20979712 Mar 19 09:22 temp12.dbf
    -rw-r----- 1 oracle oinstall  10493952 Mar 19 13:22 tools01.dbf
    -rw-r----- 1 oracle oinstall 121643008 Mar 19 13:22 undotbs01.dbf
    -rw-r----- 1 oracle oinstall  50339840 Mar 19 13:22 users01.dbf
    [oracle@ocm1 Disk1]$ mv control02.ctl /u01/app/oracle/oradata/PROD/Disk2/control02.ctl
    [oracle@ocm1 Disk1]$ mv control03.ctl /u01/app/oracle/oradata/PROD/Disk3/control03.ctl


    SQL> startup
    ORACLE instance started.

    Total System Global Area  524288000 bytes
    Fixed Size                  1220360 bytes
    Variable Size             159383800 bytes
    Database Buffers          360710144 bytes
    Redo Buffers                2973696 bytes
    Database 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


  • 相关阅读:
    JS--XML 操作
    JS--中的 Cookie 与存储
    php qr生成二维码
    jQuery cookie插件保存用户登陆信息
    linux BASH shell设置字体与背景颜色
    linux iostat命令详解 磁盘操作监控工具
    Nginx下10个安全问题提示
    PHP计算某个目录大小的方法
    php验证是否是md5编码的代码
    JS正则表达式获取字符串中特定字符
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13315896.html
Copyright © 2011-2022 走看看