首页 > 代码库 > oracle数据库归档详解

oracle数据库归档详解

什么是Oracle归档模式? Oracle数据库有联机重做日志,这个日志是记录对数据库所做的修改,比如插入,删除,更新数据等,对这些操作都会记录在联机重做日志里。一般数据库至少要有2个联机重做日志组。当一个联机重做日志组被写满的时候,就会发生日志切换,这时联机重做日志组2成为当前使用的日志,当联机重做日志组2写满的时候,又会发生日志切换,去写联机重做日志组1,就这样反复进行。

如果数据库处于非归档模式,联机日志在切换时就会丢弃. 而在归档模式下,当发生日志切换的时候,被切换的日志会进行归档。比如,当前在使用联机重做日志1,当1写满的时候,发生日志切换,开始写联机重做日志2,这时联机重做日志1的内容会被拷贝到另外一个指定的目录下。这个目录叫做归档目录,拷贝的文件叫归档重做日志。

一、查看是否是归档模式

select name,log_mode from v$database;

技术分享

LOG_MODE显为为ARCHIVELOG为归档模式,显示为NOARCHIVELOG为非归档模式

二、开启归档模式

1、启用归档模式前需要先关闭数据库

技术分享

2、关闭后,启动数据库以方便装载:启动的时候以mount形式启动

技术分享

3、更改数据库日志模式为存档模式

alter database archivelog;

4、确认已经更改

alter database open;
archive log list;

技术分享

三、关闭归档模式

归档模式改为非归档模式: 超级管理员身份登录 sys 执行:

shutdown immediate;
startup mount;
alter system archive log stop;
alter database noarchivelog;

// 禁止存档联机重做日志:转换数据库的存档模式。

alter database open;

// 打开数据库

archive log list;

// 查看已连接实例的存档信息;

本文出自 “59090939” 博客,请务必保留此出处http://59090939.blog.51cto.com/6338052/1954411

oracle数据库归档详解