• oracle开启/关闭归档模式


    1.改变非归档模式到归档模式:   
    1)SQL> conn / as sysdba (以DBA身份连接数据库)   
    2)SQL> shutdown immediate;(立即关闭数据库)   
    3)SQL> startup mount (启动实例并加载数据库,但不打开)   
    4)SQL> alter database archivelog; (更改数据库为归档模式)   
    5)SQL> alter database open; (打开数据库)   
    6)SQL> alter system archive log start; (启用自动归档)   
    7)SQL> exit (退出)   

    使用RMAN做一次完全备份,因为非归档日志模式下产生的备份日志对于归档模式已经不可用。

    SQL> archive log list;
    数据库日志模式             非存档模式
    自动存档             禁用
    存档终点            USE_DB_RECOVERY_FILE_DEST
    最早的联机日志序列     8
    当前日志序列           10
    SQL> select name,log_mode from v$database;
    
    NAME      LOG_MODE
    --------- ------------
    ORCL      NOARCHIVELOG
    
    SQL> shutdown immediate;
    数据库已经关闭。
    已经卸载数据库。
    ORACLE 例程已经关闭。
    SQL> startup mount;
    ORACLE 例程已经启动。
    
    Total System Global Area  855982080 bytes
    Fixed Size                  2180544 bytes
    Variable Size             553650752 bytes
    Database Buffers          293601280 bytes
    Redo Buffers                6549504 bytes
    数据库装载完毕。
    SQL> alter database archivelog;
    
    数据库已更改。
    
    SQL> alter database open;
    
    数据库已更改。
    
    SQL> alter system archive log start;
    
    系统已更改。
    
    SQL> archive log lit;
    SP2-0718: 非法的        ARCHIVE LOG 选项
    SQL> archive log list;
    数据库日志模式            存档模式
    自动存档             启用
    存档终点            USE_DB_RECOVERY_FILE_DEST
    最早的联机日志序列     8
    下一个存档日志序列   10
    当前日志序列           10
    SQL>

    2.改变归档模式到非归档模式:   
    1)SQL>shutdown normal 或shutdown immediate;   
    2)SQL>startup mount;   
    3)SQL>alter database noarchivelog;
    4)SQL>alter database open;

    SQL> shutdown immediate;
    数据库已经关闭。
    已经卸载数据库。
    ORACLE 例程已经关闭。
    SQL> startup mount;
    ORACLE 例程已经启动。
    
    Total System Global Area  855982080 bytes
    Fixed Size                  2180544 bytes
    Variable Size             553650752 bytes
    Database Buffers          293601280 bytes
    Redo Buffers                6549504 bytes
    数据库装载完毕。
    SQL> alter database noarchivelog;
    
    数据库已更改。
    
    SQL> alter database open;
    
    数据库已更改。
    
    SQL> archive log list;
    数据库日志模式             非存档模式
    自动存档             禁用
    存档终点            USE_DB_RECOVERY_FILE_DEST
    最早的联机日志序列     8
    当前日志序列           10
    SQL> select name,log_mode from v$database;
    
    NAME      LOG_MODE
    --------- ------------
    ORCL      NOARCHIVELOG
    
    SQL>

    3.归档相关命令 
    select name,log_mode from v$database;查看归档状态
    archive log list;查看归档状态
    archive log stop;
    archive log start;
    archive log list;
    show parameters;
    show parameters log_archive_start;
    show parameters log_archive_max_process; #归档进程数
    alter system set log_archive_max_process=5; #将归档进程数改为5
    select * from v$bgprocess; #检察后台进程

      执行手动归档:

    (1)对所有没有归档的重做日志进行归档:

    通过ALTER SYSTEM ARCHIVE LOG ALL

    (2)当前的重做日志文件进行归档:

    ALTER SYSTEM ARCHIVE CURRENT

    (3)指定日志序列号的重做日志文件进行归档

    ALTER SYSTEM ARCHIVE LOG SEQUCNE 56

    (4)指定日志组编号的重做日志文件进行归档

    ALTER SYSTEM ARCHIVE LOG GROUP 2

    (5)指定联机的重做日志文件进行归档

    ALTER SYSTEM ARCHIVE LOG

    LOGFILE 'D:oracleoradataworkREDO01.LOG '

    (6) 将下一个没有归档的重做日志文件组进行归档:

    ALTER SYSTEM ARCHIVE LOG NEXT
    4.指定归档日志文件路径:

    动态修改归档路径:
    SQL> alter system set log_archive_dest_1='location=/oracle/oracle10g/log/archive_log';
    该语句含义是确定归档日志的路径,实际上Oracle 10g可以生成多份一样的日志,保存多个位置,以防不测
    例如再添加一个日志位置可使用以下语句
    SQL>alter system set log_archive_dest_2='location=/oracle/oracle10g/log2/archive_log';

    也可以把联机重做日志归档到远程机器上,如:log_archive_dest_3='SERVICE=standby1';

    或是修改初始何参数文件pfile,加入log_archive_dest_1='location=/oracle/oracle10g/……'

    5、归档默认格式

    SQL> show parameter log_archive_format;     
    
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------------------------------
    log_archive_format                   string      %t_%s_%r.dbf

    %t表示Thread Number      %表示指定日志序列号     %r表示重置日志的ID resetlogs ID.

    6、查看数据库中的归档进程

    SQL> select * from v$bgprocess where paddr<>'00' and name like '%ARC%';
     
    PADDR              PSERIAL# NAME  DESCRIPTION                                                           ERROR
    ---------------- ---------- ----- ---------------------------------------------------------------- ----------
    00000000DC1F6190          1 ARC0  Archival Process 0                                                        0
    00000000DF1CD448          1 ARC1  Archival Process 1                                                        0
    00000000DC1F6978          1 ARC2  Archival Process 2                                                      448
  • 相关阅读:
    Mesos 配置项解析
    1039. Course List for Student (25)
    Cts框架解析(12)-ITargetPreparer
    通过ulimit改善linux系统性能(摘自IBM)
    HDU 1080 DP
    C语言调用Lua函数
    创建MySQL从库
    C# Func&lt;&gt;托付
    SpringMVC入门
    VNC连接Ubuntu 16.04桌面灰色的问题解决
  • 原文地址:https://www.cnblogs.com/rusking/p/4025474.html
Copyright © 2020-2023  润新知