Oracle 归档日志.docx

上传人:b****5 文档编号:7466837 上传时间:2023-01-24 格式:DOCX 页数:15 大小:22.18KB
下载 相关 举报
Oracle 归档日志.docx_第1页
第1页 / 共15页
Oracle 归档日志.docx_第2页
第2页 / 共15页
Oracle 归档日志.docx_第3页
第3页 / 共15页
Oracle 归档日志.docx_第4页
第4页 / 共15页
Oracle 归档日志.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

Oracle 归档日志.docx

《Oracle 归档日志.docx》由会员分享,可在线阅读,更多相关《Oracle 归档日志.docx(15页珍藏版)》请在冰豆网上搜索。

Oracle 归档日志.docx

Oracle归档日志

 

Oracle归档日志

--====================

--Oracle 归档日志

--====================

 

    Oracle可以将联机日志文件保存到多个不同的位置,将联机日志转换为归档日志的过程称之为归档。

相应的日志被称为归档日志。

 

一、归档日志

    是联机重做日志组文件的一个副本

    包含redo记录以及一个唯一的logsequencenumber

    对日志组中的一个日志文件进行归档,如果该组其中一个损坏,则另一个可用的日志将会被归档

    对于归档模式的日志切换,当日志归档完成后,下一个日志才能被覆盖或重新使用

    自动归档功能如开启,则后台进程arcn在日志切换时自动完成归档,否则需要手动归档

    归档日志用途

        恢复数据库

        更新standby数据库

        使用LogMiner 提取历史日志的相关信息

       

二、日志的两种模式

    1.非归档模式

        不适用与生产数据库

        创建数据库时,缺省的日志管理模式为非归档模式

        当日志切换,检查点产生后,联机重做日志文件即可被重新使用

        联机日志被覆盖后,介质恢复仅仅支持到最近的完整备份

        不支持联机备份表空间,一个表空间损坏将导致整个数据库不可用,需要删除掉损坏的表空间或从备份恢复

        对于操作系统级别的数据库备份需要将数据库一致性关闭

        应当备份所有的数据文件、控制文件(单个)、参数文件、密码文件、联机日志文件(可选)

 

    2.归档模式

        能够对联机日志文件进行归档,生产数据库强烈建议归档

        在日志切换时,下一个即将被写入日志组必须归档完成之后,日志组才可以使用

        归档日志的Logsequencenumber信息会记录到控制文件之中

        必须有足够的磁盘空间用于存放归档日志

        Oracle9i 需要设置参数log_archive_start=true 才能够进行自动归档

        备份与恢复

            支持热备份,且当某个非系统表空间损坏,数据库仍然处于可用状态,且支持在线恢复

            使用归档日志能够实现联机或脱机时点恢复(即可以恢复到指定的时间点、指定的归档日志或指定的SCN)

 

三、两种模式的切换设置及手动归档

    1.非归档到归档模式

        a.一致性关闭数据库(shutdown [immediate|transactional|normal])

        b.启动到mount阶段(startupmount)

        c.切换到归档模式(alterdatabasearchivelog  [manual])

        d.切换到open阶段(alter database open)

        e.对数据做一个完整备份(full backup)

        --演示非归档到归档模式

 SQL> ARCHIVE LOG LIST    --查看数据库是否处于归档模式

     Database log mode              No ArchiveMode

      Automaticarchival             Disabled

      Archivedestination            USE_DB_RECOVERY_FILE_DEST

      Oldestonline log sequence     14

      Current log sequence           16

 SQL> SELECT log_mode FROM v$database;  --查看数据库是否处于归档模式

 

            LOG_MODE

            ------------

            NOARCHIVELOG       

 SQL> SHUTDOWN IMMEDIATE;     --一致性关闭数据库

            Database closed.

            Database dismounted.

            ORACLEinstanceshutdown.

  SQL> STARTUPMOUNT;         --启动到mount状态

         ORACLEinstancestarted.

 

        TotalSystemGlobalArea  251658240bytes

         Fixed Size                  1218796bytes

        Variable Size              75499284bytes

         Database Buffers          171966464bytes

       RedoBuffers                2973696bytes

       Database mounted.

    SQL> ALTER DATABASE ARCHIVELOG;  --切换到自动归档模式

        Database altered.

     SQL> ALTER DATABASE OPEN;        --切换到open状态

            Database altered.

     SQL> ARCHIVE LOG LIST;           --查看数据库的归档状态

      Database log mode   ArchiveMode    --已置为归档模式

      Automaticarchival    Enabled         --对日志进行自动归档

      Archivedestination   USE_DB_RECOVERY_FILE_DEST

     Oldestonline log sequence    14

     Next log sequence to archive   16

     Current log sequence           16

            --备份数据库步骤省略

 

    2.归档模式切换到非归档模式(步骤同非归档到归档模式仅仅是c步骤使用alter database noarchivelog,演示省略)

        a.一致性关闭数据库(shutdown [immediate|transactional|normal])

        b.启动到mount阶段(startupmount)

        c.切换到归档模式(alter database noarchivelog  )

        d.切换到open阶段(alter database open)

        e.对数据做一个完整备份(full backup)

       

    3.手动归档

        手动归档时需要将日志模式切换为alter database archivelog manual

        再使用alter systemarchive log current | all 实现归档

        更多手动归档命令:

ALTERSYSTEMarchive_log_clause

        注意:

            手动归档模式下不支持stanby数据库

            在alter database archivelog模式下也可以实现对日志的归档

           

SQL> ALTER DATABASE ARCHIVELOG MANUAL;     --将日志模式切换为手工归档模式

 

            Database altered.

 

SQL> ALTER DATABASE OPEN;                  --打开数据库

 

            Database altered.

 

SQL> ALTER SYSTEMARCHIVE LOG CURRENT;     --对当前的日志进行归档(建议在mount阶段完成)

 

            Systemaltered.

 

SQL> ALTER SYSTEMARCHIVE LOG ALL;         --对所有的日志进行归档

            alter systemarchive log all

            *

            ERRORatline1:

   ORA-00271:

 thereare no logsthatneedarchiving  --没有需要归档的日志

 

    4.归档进程的调整

        通过设置LOG_ARCHIVE_MAX_PROCESSES 参数,可以指定数据库规定所需初始化的进程数,缺省的归档进程数为2

        一般情况下不需要修改该参数,Oracle会根据归档情况自动启动额外的归档进程

        也可以动态的增加或减少归档进程数,比如有些业务在月底需要进行大量归档,平时则归档较少,对此可以动态修改

        修改方法

            ALTER SYSTEM SET LOG_ARCHIVE_MAX_PROCESSES=3;

   

    5.配置归档(两种归档位置配置方法)

        a.归档到本机且少于等于两个归档位置

     设置LOG_ARCHIVE_DEST和LOG_ARCHIVE_DUPLEX_DEST参数

alter system set log_archive_dest = '/u01/app/oracle/archivelog1' scope = spfile;

     alter system set log_archive_duplex_dest = '/u01/app/oracle/archivelog2' scope = spfile;

           

        b.归档到本机或远程主机

      设置LOG_ARCHIVE_DEST_n 参数,n最大值为10

      alter system set log_archive_dest_1 = 'LOCATION=/u01/app/oracle/archivelog3';

      alter system set log_archive_dest_2 = 'SERVICE=standby1';

    对于远程归档位置,SERVICE选项需要指定远程数据库的网络服务名(在tnsnames.ora文件中配置)

            LOG_ARCHIVE_DEST_n的两个常用选项

                MANADATORY | OPTIONAL:

 MANADATORY表示归档必须成功复制到目的路径之后,联机重做日志才能被复用,OPTIONAL正好相反

                REOPEN:

   指定归档失败后指定间隔多少时间重试归案,缺省的为300秒

                示例:

     log_archive_dest_1 = 'LOCATION=/u01/app/oracle/archivelog3manadatoryreopen=600'

     log_archive_dest_2 = 'SERVICE=standby1manadatoryreopen'

               

        c.两种归档方法异同(前者log_archive_dest、log_archive_duplex_dest ,后者log_archive_dest_n)

      两者都可以归档到本机,后者可以归档到远程主机,前者不支持该功能

      前者最多配置两个归档位置,后者可以配置10个归档位置

      两者互不兼容,要么使用前者,要么使用后者

 使用后者归档到本地时需要增加LOCATION选项,备份到远程主机需要使用SERVICE选项

 但上述两种方式未指定路径时,归档日志位于db_recovery_file_dest 缺省为$ORACLE_BASE/flash_recovey_area

           

        d.归档日志命名格式

    设置LOG_ARCHIVE_FORMAT参数,Unix下的缺省设置为LOG_ARCHIVE_FORMAT=%t_%s_%r.dbf

                %s:

 日志序列号:

                %S:

 日志序列号(带有前导)

                %t:

 重做线程编号.

                %T:

 重做线程编号(带有前导)

                %a:

 活动ID号

                %d:

 数据库ID号

                %rRESETLOGS的ID值.

     alter system set log_archive_format = 'arch_%t_%s_%r.arc';

           

        e.归档位置状态

     Valid/Invalid      --磁盘位置及服务名等是否有效

     Enabled/Disabled   --磁盘位置的可用状态及数据库能否使用该归档位置

     Active/Inactive    --访问归档目的地是否有异常

           

        f.归档成功的最小个数(使用参数log_archive_min_succeed_dest = n)

     alter system set log_archive_min_succeed_dest = 2;   --缺省为1

           联机重做日志组能够被覆盖的前提

           所有强制路径归档位置成功实现归档

           归档目的地的成功归档的个数大于或等于上述参数设定的值

           当强制个数大于该参数设定的个数,则以强制个数为准

           当强制个数小于该参数设定的个数,则可选的成功归档路径加上强制的归档路径个数至少等于该参数设定值

       

        g.控制归档的可用性(使用参数log_archive_dest_state_n)

     alter system set log_archive_dest_state_1 = enable | defer

            enable  -->缺省状态,可以在该归档位置进行归档

            defer   -->禁用该归档位置

           

        h.演示归档路径配置及查看归档进程,归档位置状态

     SQL> ARCHIVE LOG LIST;         --查看日志是否处于归档状态

    Database log mode              ArchiveMode

      Automaticarchival            Enabled

      Archivedestination           USE_DB_RECOVERY_FILE_DEST

            Oldestonline log sequence     24

            Next log sequence to archive   26

            Current log sequence        26

 

   SQL> hops -ef | grepora_arc    --查看归档进程是否已启动

 oracle    4062     1  011:

43?

        00:

00:

00ora_arc0_orcl

 oracle    4064     1  011:

43?

        00:

00:

00ora_arc1_orcl

 

    SQL> SHOWPARAMETERARCHIVE  --查看归档路径是否已设置,为空值表示未设置

 

  NAME         TYPE        VALUE

 -----------------------------------------------------------------------------

 archive_lag_target      integer     0

 log_archive_config        string

log_archive_dest        string

log_archive_dest_1         string

log_archive_dest_10        string

log_archive_dest_2        string

log_archive_dest_3         string

log_archive_dest_4         string

log_archive_dest_5         string

log_archive_dest_6         string

log_archive_dest_7         string

 

  NAME              TYPE        VALUE

 -----------------------------------------------------------------------------

log_archive_dest_8      string

log_archive_dest_9         string

log_archive_dest_state_1     string     enable

log_archive_dest_state_10     string      enable

log_archive_dest_state_2      string      enable

log_archive_dest_state_3      string      enable

log_archive_dest_state_4      string      enable

log_archive_dest_state_5      string      enable

log_archive_dest_state_6     string      enable

log_archive_dest_state_7      string      enable

log_archive_dest_state_8     string      enable

 

 NAME               TYPE        VALUE

-----------------------------------------------------------------------------

log_archive_dest_state_9      string      enable

log_archive_duplex_dest      string

log_archive_format         string      %t_%s_%r.dbf

log_archive_local_first      boolean     TRUE

log_archive_max_processes     integer     2

log_archive_min_succeed_dest     integer     1

log_archive_start          boolean     FALSE --该参数在9i中使用

log_archive_trace          integer     0

remote_archive_enable        string      true

standby_archive_dest        string      ?

/dbs/arch

 

 SQL> alter system set log_archive_dest = '/u01/app/oracle/archivelog1' scope = spfile;

 

            Systemaltered.

 

SQL> alter system set log_archive_duplex_dest= '/u01/app/oracle/archivelog2' scope=spfile;

 

            Systemaltered.

 

SQL> alter system set log_archive_format = 'arch_%t_%s_%r.arc' scope = spfile;

 

          --设定完毕后需要重新启动实例,在此省略关闭启动信息

SQL> hols /u01/app/oracle/archivelog1  --查看归档路径下是否存在文件或文件夹

 

SQL> hols /u01/app/oracle/archivelog2  --查看归档路径下是否存在文件或文件夹

 

SQL> alter systemarchive log current;  --手动进行归档

 

            Systemaltered.

 

 SQL> hols -l /u01/app/oracle/archivelog1   --在指定的文件夹archivelog1已产生归档日志

            total18224

            -rw-------1oracleoinstall18636800Jul2820:

39arch_1_26_724852763.arc

 

 SQL> hols -l /u01/app/oracle/archivelog2   --在指定的文件夹archivelog2已产生归档日志

            total18224

            -rw-------1oracleoinstall18636800Jul2820:

39arch_1_26_724852763.arc

 

  SQL> homkdir /u

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 其它

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1