Oracle启动和归档模式

数据库运行

 

Oracle数据库的完整启动过程是分步骤完成的,包含以下3个步骤:

 

启动实例–>加载数据库–>打开数据库

 

因为Oracle数据库启动过程中不同的阶段可以对数据库进行不同的维护操作,对应我们不同的需求,所以就需不同的模式启动数据库。

 

1、Oracle启动需要经历四个状态:SHUTDOWN 、NOMOUNT 、MOUNT 、OPEN
2、Oracle关闭的四种方式:Normal, Immediate, Transactional, Abort
3、启动和关闭过程详解

 

这里写图片描述

 

Oracle数据库状态

查看状态

select status from v$instance;

一、NoMount 状态(启动实例不加载数据库)

命令:startup nomount

讲解:这种启动模式只会创建实例,并不加载数据库,Oracle仅为实例创建各种内存结构和服务进程,不会打开任何数据文件。在NoMount模式下,只能访问那些与SGA区相关的数据字典视图,包括VPARAMETER、VSGA、VPROCESS和VSESSION等,这些视图中的信息都是从SGA区中获取的,与数据库无关。

模式用途:创建新数据库、重建控制文件

二、Mount模式(加载数据库但不打开数据库)

命令:startup mount

讲解:这种启动模式将为实例加载数据库,但保持数据库为关闭状态。因为加载数据库时需要打开数据库控制文件,但数据文件和重做日志文件都都无法进行读写,所以用户还无法对数据库进行操作。在Mount模式下,只能访问那些与控制文件相关的数据字典视图,包括VTHREAD、VCONTROLFILE、VDATABASE、VDATAFILE 和 V$LOGFILE等,这些视图都是从控制文件中获取的。

模式用途:重命名数据文件、添加、删除或重命名重做日志文件、执行数据库完全恢复操作、改变数据库的归档模式;

三、Open状态(正常打开数据库)

命令:startup [open]

讲解:正常按3个步骤启动数据库。

模式用途:平时不对数据库做什么维护,像只做应用开发,用这个模式就好了;

四、强制启动状态

命令:startup force

用途&讲解:在某些情况下,使用前面的各种模式都无法成功启动数据库时,可以尝试强制启动模式。

五、其他状态

使用Alter Database语句,还可以在各启动模式间切换。并且,还可以对数据库设置不同的状态用于不同的操作,如受/非受限抽状态、只读。

 

 

数据库关闭

一、Nomal(正常关闭方式)

命令:shutdown nomal

讲解:正常方式关闭数据时,Oracle执行如下操作:
①、阻止任何用户建立新的连接。
②、等待当前所有正在连接的用户主动断开连接(此方式下Oracle不会立即断掉当前用户的连接,这些用户仍然操作相关的操作)。
③、一旦所有的用户都断开连接,则立即关闭、卸载数据库,并终止实例。(所以,一般以正常方式关闭数据库时,应该通知所有在线的用户尽快断开连接)

二、Immediate(立即关闭方式)

命令:shutdown immediate

讲解:Oracle执行如下操作:
①、阻止任何用户建立新的连接,同时阻止当前连接的用户开始任何新的事务。
②、Oracle不等待在线用户主动断开连接,强制终止用户的当前事务,将任何未提交的事务回退。(如果存③、在太多未提交的事务,此方式将会耗费很长时间终止和回退事务)
直接关闭、卸载数据库,并终止实例。

三、Transactional(事务关闭方式)

命令:shutdown transactional

讲解:这种方式介于正常关闭方式跟立即关闭方式之间,响应时间会比较快,处理也将比较得当。执行过程如下:
①、阻止任何用户建立新的连接,同时阻止当前连接的用户开始任何新的事务。
②、等待所有未提交的活动事务提交完毕,然后立即断开用户的连接。
③、直接关闭、卸载数据库,并终止实例。

四、Abort(终止关闭方式)

命令:shutdown abort

讲解:这是比较粗暴的一种关闭方式,当前面3种方式都无法关闭时,可以尝试使用终止方式来关闭数据库。但是以这种方式关闭数据库将会丢失一部份数据信息,当重新启动实例并打开数据库时,后台进程SMON会执行实例恢复操作。一般情况下,应当尽量避免使用这种方式来关闭数据库。执行过程如下:
①、阻止任何用户建立新的连接,同时阻止当前连接的用户开始任何新的事务。
②、立即终止当前正在执行的SQL语句。
③、任何未提交的事务均不被退名。
④、直接断开所有用户的连接,关闭、卸载数据库,并终止实例。

 

数据库状态切换

SQL> shutdown immediate;

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> startup mount

ORACLE instance started.

--如果安装多个库,会报错,找不到句柄,句柄在这里的作用,现在个人理解为默认实例,所以当我使用

shutdown immediate退出之后,再使用 startup mount无法执行,会出现

ORA-12514: TNS:listener does not currently know of service requested in connect descriptor,需要将我之前的实例改掉,解决方案如下
set ORACLE_SID=ORCL//这里改成我要启动的实例
set TWO_TASK=

有两个实例的时候,操作每个数据库实例之前也要设置ORACLE_SID变量 (使用sql窗口工具必须)

归档模式

查看当前模式

select name,log_mode from v$database;

 

在Oracle数据库中,主要有两种日志操作模式:归档模式(archivelog mode)及非归档模式(noarchivelog mode)。在默认情况下oracle数据库采用的是非归档模式。作为一个合格的DBA,应当深入了解这两种日志操作模式的特点,并且保证数据库运行在合适的日志操作模式下。在讲重做日志归档模式(archivelog mode)及非归档模式(noarchivelog mode)之前我们先简单的了解一下oracle的日志切换步骤。oracle数据库的重做日志是重复写的,一般来说oracle数据库拥有多个重做日志组(redo log group),每个重做日志组又包含多个成员(详细介绍请查考oracle官方文档),我们大部分的数据更改操作都会写入在线日志中,也就是当前正在使用的重做日志。当一个重做日志写满或DBA发出switch log命令的时候就会发生日志切换,如果oracle运行在非归档模式下,oracle直接覆盖写下一个重做日志组。如果oracle运行在归档模式下则oracle会查询即将写入的重做日志是否归档,没有归档则等待其归档,等归档完成以后再覆盖写入重做日志记录。当然如果发生了归档等待的话可以通过添加重做日志组或开启更多的归档进程来避免这个等待事件。总的来说重做日志归档模式(archivelog mode)及非归档模式(noarchive mode)的最重要的区别就是当前的重做日志切换以后会不会被归档进程(archive process)copy到归档目的地(log_archive_dest)。

 

      一. 非归档模式(noarchivelog mode)的利与弊

 

           当oracle数据库运行在非归档模式下,控制文件确定了发生日志切换以后重做日志文件不需要归档,同时对于(日志写进程)LGWR来说此重做日志组是可以直接使用的。非归档模式(noarchivelog mode)只能提供实例级别的故障恢复,需要介质恢复的时候oracle就爱莫能助了。如果很不幸的发生了,那么我们只能把数据库恢复到过去的某个时间点上,前提是你完全冷备份了数据库。从备份时间点到故障发生期间的所有数据都只有丢失了。而且当oracle运行在非归档模式(noarchivelog mode)下的时候数据库不提供在线的表空间备份,换句话说热备是不可用的。

 

      二. 归档模式(archivelog mode)的利与弊

 

           当oracle数据库运行在归档模式下,控制文件确定了发生日志切换后的重做日志文件在归档前是不能被日志写进程)LGWR重用的。归档模式(archivelog mode)下oracle数据库能从实例,介质的失败中得到恢复,当然最近一次的数据库全备及备份以来的所有归档日志的备份时必须的。同时我们还能利用归档日志的重放来完成oracle standby的搭建(oracle standby以后会介绍,请大家留意)。归档模式(archivelog mode)又可以分为手动归档和自动归档,顾名思义手动归档需要DBA的干预;而自动归档,oracle会自己完成归档任务。

 

      通过上面的简单描述我们应该对两种模式的利与弊有所了解了,但是具体选择哪种模式则需要我们从实际情况出发综合考虑。不过作为生产环境一般都是选用归档模式(archivelog mode)。接下来将要介绍一下当前模式的查询以及模式的切换。

 

      三. 当前模式查询

 

           可以通过以下方式查询当前数据库是运行在哪种模式下的:

 

           [oracle@localhost~]$ sqlplus "/ as sysdba"                                                                               

 

           SQL> archive log list
           Database log mode              Archive Mode
           Automatic archival             Enabled
           Archive destination            /u01/oradata/archive_sid
           Oldest online log sequence     9975
           Next log sequence to archive   9977
           Current log sequence           9977

 

           SQL> select name,log_mode from v$database;

 

           NAME      LOG_MODE
           --------- ------------
           SID      ARCHIVELOG    

 

      四. 模式切换

 

          

1.非归档到归档模式

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

        b.启动到mount阶段(startup mount)

        c.切换到归档模式(alter database archivelog  [manual])

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

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

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

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

            Database log mode              No Archive Mode

            Automatic archival             Disabled

            Archive destination            USE_DB_RECOVERY_FILE_DEST

            Oldest online log sequence     14

            Current log sequence           16

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

 

            LOG_MODE

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

            NOARCHIVELOG       

 

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

            Database closed.

            Database dismounted.

            ORACLE instance shut down.

            SQL> STARTUP MOUNT;         --启动到mount状态

            ORACLE instance started.

 

            Total System Global Area  251658240 bytes

            Fixed Size                  1218796 bytes

            Variable Size              75499284 bytes

            Database Buffers          171966464 bytes

            Redo Buffers                2973696 bytes

            Database mounted.

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

            Database altered.

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

            Database altered.

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

            Database log mode              Archive Mode    --已置为归档模式

            Automatic archival             Enabled         --对日志进行自动归档

            Archive destination            USE_DB_RECOVERY_FILE_DEST

            Oldest online 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阶段(startup mount)

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

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

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

       

    3.手动归档

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

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

        更多手动归档命令:ALTER SYSTEM archive_log_clause

        注意:

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

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

           

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

 

            Database altered.

 

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

 

            Database altered.

 

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

 

            System altered.

 

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

            alter system archive log all

            *

            ERROR at line 1:

            ORA-00271: there are no logs that need archiving  --没有需要归档的日志

 

    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/archivelog3 manadatory reopen = 600'

                log_archive_dest_2 = 'SERVICE=standby1 manadatory reopen'

               

        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号

                %r RESETLOGS的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              Archive Mode

            Automatic archival             Enabled

            Archive destination            USE_DB_RECOVERY_FILE_DEST

            Oldest online log sequence     24

            Next log sequence to archive   26

            Current log sequence           26

 

            SQL> ho ps -ef | grep ora_arc    --查看归档进程是否已启动

            oracle    4062     1  0 11:43 ?        00:00:00 ora_arc0_orcl

            oracle    4064     1  0 11:43 ?        00:00:00 ora_arc1_orcl

 

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

 

            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;

 

            System altered.

 

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

 

            System altered.

 

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

 

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

 

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

 

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

 

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

 

            System altered.

 

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

            total 18224

            -rw------- 1 oracle oinstall 18636800 Jul 28 20:39 arch_1_26_724852763.arc

 

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

            total 18224

            -rw------- 1 oracle oinstall 18636800 Jul 28 20:39 arch_1_26_724852763.arc

 

            SQL> ho mkdir /u01/app/oracle/archivelog3   --创建新的归档路径

 

            SQL> ho mkdir /u01/app/oracle/archivelog4   --创建新的归档路径

 

            SQL> alter system set log_archive_dest_1 = 'location=/u01/app/oracle/archivelog3'

              2 scope = spfile;

 

            System altered.

 

            SQL>  alter system set log_archive_dest_2 = 'location=/u01/app/oracle/archivelog4'

              2   scope = spfile;

 

            System altered.

 

            SQL> shutdown immediate;       --关闭实例

            Database closed.

            Database dismounted.

            ORACLE instance shut down.

            SQL> startup                   --启动实例后,收到错误提示表明两种归档方式不兼容

            ORA-16019: cannot use LOG_ARCHIVE_DEST_1 with LOG_ARCHIVE_DEST or LOG_ARCHIVE_DUPLEX_DEST

 

            --关于上述设置导致的错误处理请参照:又一例SPFILE设置错误导致数据库无法启动

                                                SPFILE错误导致数据库无法启动

 

            --下面是正确的处理办法,应当先将一种归档方式路径置空,此处是将log_archive_dest置空

            SQL> alter system set log_archive_dest = '' scope = spfile;

 

            System altered.

           

            --此处是将log_archive_duplex_dest置空

            SQL> alter system set log_archive_duplex_dest = '' scope = spfile;

 

            System altered.

           

            --接下来再设定log_archive_dest_1,log_archive_dest_2

            SQL> alter system set log_archive_dest_1 = 'location=/u01/app/oracle/archivelog3'

              2 scope = spfile;

 

            System altered.

 

            SQL> alter system set log_archive_dest_2 = 'location=/u01/app/oracle/archivelog4'

              2  scope = spfile;

 

            System altered.

           

            --由于没有配置standby服务器,所以省略配置到远程主机

            --设定完毕后需要重新启动实例,此时系统能正常启动,在此省略关闭启动信息

           

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

 

            System altered.

 

            SQL> ho ls -l /u01/app/oracle/archivelog3/   --查看归档日志

            total 27752

            -rw------- 1 oracle oinstall 28382208 Aug  2 13:46 arc_1_38_724852763.arc

 

            SQL> ho ls -l /u01/app/oracle/archivelog4/   --查看归档日志

            total 27752

            -rw------- 1 oracle oinstall 28382208 Aug  2 13:45 arc_1_38_724852763.arc  

 

    SQL> col dest_name format a20; 

    SQL> col destination format a30;

    SQL> select dest_name,status,archiver,destination,

      2  log_sequence,reopen_secs,transmit_mode,process

      3  from v$archive_dest;    --查看归档目的地的相关状态信息

 

    DEST_NAME            STATUS    ARCHIVER   DESTINATION                    LOG_SEQUENCE REOPEN_SECS TRANSMIT_MOD PROCESS

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

    LOG_ARCHIVE_DEST_1   VALID     ARCH       /u01/app/oracle/archivelog3/             38         300 SYNCHRONOUS  ARCH

    LOG_ARCHIVE_DEST_2   VALID     ARCH       /u01/app/oracle/archivelog4/             38         300 SYNCHRONOUS  ARCH

    LOG_ARCHIVE_DEST_3   INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH

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

             

        SQL> alter system set log_archive_dest_state_2 = defer;   --停用log_archive_dest_state_2

 

        System altered.

 

        SQL> show parameter log_archive_dest_state

 

        NAME                                 TYPE        VALUE

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

        log_archive_dest_state_1             string      enable

        log_archive_dest_state_10            string      enable

        log_archive_dest_state_2             string      DEFER     --该路径显示为defer

        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

        log_archive_dest_state_9             string      enable        

 

        SQL> alter system archive log current;   --手动归档

 

        System altered.

 

        SQL> ho ls -l /u01/app/oracle/archivelog3; --可以看出archivelog3比archivelog4多出几个归档文件

        total 124772                               --建议将多出文件件的使用系统命令复制到archivelog4

        -rw------- 1 oracle oinstall 28382208 Aug  2 13:46 arc_1_38_724852763.arc

        -rw------- 1 oracle oinstall  1788416 Aug  2 20:41 arc_1_39_724852763.arc

        -rw------- 1 oracle oinstall 30257664 Aug  2 22:21 arc_1_40_724852763.arc

        -rw------- 1 oracle oinstall 30257664 Aug  2 22:22 arc_1_41_724852763.arc

        -rw------- 1 oracle oinstall 30257664 Aug  2 22:22 arc_1_42_724852763.arc

        -rw------- 1 oracle oinstall  6647296 Aug  2 22:23 arc_1_43_724852763.arc

 

        SQL> ho ls -l /u01/app/oracle/archivelog4;

        total 29504

        -rw------- 1 oracle oinstall 28382208 Aug  2 13:45 arc_1_38_724852763.arc

        -rw------- 1 oracle oinstall  1788416 Aug  2 20:41 arc_1_39_724852763.arc

 

        SQL> alter system set log_archive_dest_state_2 = enable; --启用log_archive_dest_state_2

 

        System altered.

 

        SQL> alter system archive log current;   --手动归档

 

        System altered.

 

        SQL> ho ls -l /u01/app/oracle/archivelog3; --启用后出现了相同的arc_1_44_724852763.arc文件

        total 124856

        -rw------- 1 oracle oinstall 28382208 Aug  2 13:46 arc_1_38_724852763.arc

        -rw------- 1 oracle oinstall  1788416 Aug  2 20:41 arc_1_39_724852763.arc

        -rw------- 1 oracle oinstall 30257664 Aug  2 22:21 arc_1_40_724852763.arc

        -rw------- 1 oracle oinstall 30257664 Aug  2 22:22 arc_1_41_724852763.arc

        -rw------- 1 oracle oinstall 30257664 Aug  2 22:22 arc_1_42_724852763.arc

        -rw------- 1 oracle oinstall  6647296 Aug  2 22:23 arc_1_43_724852763.arc

        -rw------- 1 oracle oinstall    81408 Aug  2 22:25 arc_1_44_724852763.arc

 

        SQL> ho ls -l /u01/app/oracle/archivelog4;

        total 29588

        -rw------- 1 oracle oinstall 28382208 Aug  2 13:45 arc_1_38_724852763.arc

        -rw------- 1 oracle oinstall  1788416 Aug  2 20:41 arc_1_39_724852763.arc

        -rw------- 1 oracle oinstall    81408 Aug  2 22:25 arc_1_44_724852763.arc

       

四、归档日志相关视图

    v$archived_log         -->从控制文件中获得归档的相关信息

    v$archive_dest         -->归档路径及状态

    v$log_history          -->控制文件中日志的历史信息

    v$database             -->查看数据库是否处于归档状态

    v$archive_processes    -->归档相关的后台进程信息

    命令:archive log list

   

        SQL> select  name,sequence#,registrar,standby_dest,archived,status

          2  from v$archived_log;  

          NAME                                                     SEQUENCE# REGISTR STA ARC S

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

        /u01/app/oracle/archivelog4/arc_1_38_724852763.arc              38 FGRD    NO  YES A

        /u01/app/oracle/archivelog3/arc_1_39_724852763.arc              39 ARCH    NO  YES A

        /u01/app/oracle/archivelog4/arc_1_39_724852763.arc              39 ARCH    NO  YES A

        /u01/app/oracle/archivelog3/arc_1_40_724852763.arc              40 ARCH    NO  YES A

        /u01/app/oracle/archivelog3/arc_1_41_724852763.arc              41 ARCH    NO  YES A

        /u01/app/oracle/archivelog3/arc_1_42_724852763.arc              42 ARCH    NO  YES A

        /u01/app/oracle/archivelog3/arc_1_43_724852763.arc              43 ARCH    NO  YES A

        /u01/app/oracle/archivelog3/arc_1_44_724852763.arc              44 FGRD    NO  YES A

        /u01/app/oracle/archivelog4/arc_1_44_724852763.arc              44 FGRD    NO  YES A

 

转载于:https://www.cnblogs.com/s1127736971/p/9703400.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值