[Oracle学习笔记] 管理归档日志

在归档模式下,Oracle将已经写满的日志文件复制到指定的地方,这个过程叫归档,复制下来的日志文件叫归档日志。

一、设置数据库为归档模式

通过archive log list查询数据库日志模式

SQL> archive log list;
数据库日志模式             非存档模式
自动存档             禁用
存档终点            USE_DB_RECOVERY_FILE_DEST
最早的联机日志序列     17
当前日志序列           19

当前为非归档模式,修改为归档模式方法:ALTER DATABASE ARCHIVELOG;

示例:

1. 关闭数据库

SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。

2. 启动数据库,不打开

SQL> startup mount;
ORACLE 例程已经启动。

Total System Global Area  612368384 bytes
Fixed Size                  1250428 bytes
Variable Size             255855492 bytes
Database Buffers          348127232 bytes
Redo Buffers                7135232 bytes
数据库装载完毕。

3. 修改数据库模式

SQL> alter database archivelog;

数据库已更改。

4. 打开数据库

SQL> alter database archivelog;

数据库已更改。

再查询数据库归档模式,已经变为归档模式了。

SQL> archive log list;
数据库日志模式            存档模式
自动存档             启用
存档终点            USE_DB_RECOVERY_FILE_DEST
最早的联机日志序列     17
下一个存档日志序列   19
当前日志序列           19

 

二、设置归档目标

归档日志存放路径 DB_RECOVERY_FILE_DEST

SQL> show parameter db_recovery_file

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest                string      D:\oracle\product\10.2.0/flash
                                                 _recovery_area
db_recovery_file_dest_size           big integer 2G

可以通过设置参数LOG_ARCHIVE_DEST_n设置其他归档目标,n为1~10,Oracle将日志文件以相同的方式归档到每一个归档目标中。

SQL> show parameter log_archive_dest

NAME                                 TYPE        VALUE
------------------------------------ ----------- -----------------------------
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
log_archive_dest_8                   string
log_archive_dest_9                   string

设置其他归档目标:

SQL> alter system set log_archive_dest_1='location=d:\oracle\myarchive';

系统已更改。

三、归档的跟踪级别

设置参数log_archive_trace,默认是0,即不在跟踪文件中记录归档的任何信息。跟踪级别是0, 1,2,4,8,16,32,64,各个级别对应的归档内容这里不详述。可以进行叠加,将多个级别对应的值叠加作为trace参数的值。

SQL> show parameter log_archive_trace

NAME                                 TYPE        VALUE
------------------------------------ ----------- --------------------
log_archive_trace                    integer     0
SQL> alter system set log_archive_trace=17;
系统已更改。

四、查询归档日志

1. v$database

查询数据库是否属于归档模式, 除了archive log list外,可以查询v$database

SQL> select log_mode from v$database;

LOG_MODE
------------
ARCHIVELOG

2. v$archived_log

3. v$archived_dest

4. v$archive_processes

5. v$backup_redolog

6. v$log

posted @ 2013-01-07 22:00  闲时乱翻书  阅读(279)  评论(0)    收藏  举报