归档日志(Archive Log)是非活动的重做日志备份.通过使用归档日志,可以保留所有重做历史记录,当数据库处于ARCHIVELOG模式并进行日志切换式,后台进程ARCH会将重做日志的内容保存到归档日志中.当数据库出现介质失败时,使用数据文件备份,归档日志和重做日志可以完全恢复数据库.

1.查看当前数据库是否处于归档模式:
select name,log_mode from v$database;
archive log list;

2.改变非归档模式到归档模式:

conn / as sysdba --(以DBA身份连接数据库)

shutdown immediate; --(立即关闭数据库)

startup mount; --(启动实例并加载数据库,但不打开) 启动数据库到mount状态

alter database archivelog; --(更改数据库为归档模式)

alter database open; --(打开数据库)

alter system archive log start; --(启用自动归档)
exit --(退出)

3.改变归档模式到非归档模式:
1)SQL>SHUTDOWN NORMAL/IMMEDIATE;
2)SQL>STARTUP MOUNT;
3)SQL>ALTER DATABASE NOARCHIVELOG;
4)SQL>ALTER DATABASE OPEN;

4.启用自动归档: LOG_ARCHIVE_START=TRUE
归档模式下,日志文件组不允许被覆盖(重写),当日志文件写满之后,如果没有进行手动归档,那么系统将挂起,直到归档完成为止.
这时只能读而不能写.
运行过程中关闭和重启归档日志进程
SQL>ARCHIVE LOG STOP
SQL>ARCHIVE LOG START

5.手动归档: LOG_ARCHIVE_START=FALSE
归档当前日志文件
SQL>ALTER SYSTEM ARCHIVE LOG CURRENT;
归档序号为052的日志文件
SQL>ALTER SYSTEM ARCHIVE LOG SEQUENCE 052;
归档所有日志文件
SQL>ALTER SYSTEM ARCHIVE LOG ALL;
改变归档日志目标
SQL>ALTER SYSTEM ARCHIVE LOG CURRENT TO '&PATH';

6.归档日志操作

select group#,sequence#,bytes/1024/1024 byte_mb,members,status from v$log;--查看组号,每组文件数(成员数),文件大小和状态
SELECT group#,member FROM v$logfile;--查看组号和文件位置
ALTER DATABASE ADD LOGFILE GROUP 2 ('E:\APP\DELL\ORADATA\SRITSUB\REDO02.LOG') SIZE 100M;--添加日志组并指定文件位置和大小
alter database add logfile member 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\redo0401.log' to group 4;--添加日志成员
ALTER SYSTEM SWITCH LOGFILE;--切换日志组
ALTER SYSTEM CHECKPOINT;--改变检查点
ALTER DATABASE DROP LOGFILE GROUP 2;--删除日志组
alter database drop logfile member 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\redo0401.log';--删除日志成员

7.oracle重做日志组的三种状态:current,active,inactive

current:表示该日志组为当前日志组,oracle正在使用该日志组;

active:当current redo组发生日志切换时,状态会改变为active,在这个状态下,如果数据库
为归档模式,archive进程会归档active日志组;
如果发生数据库crash,该日志组也是实例恢复必需的日志组;

inactive:当active日志组归档完毕并且oracle判断不需要进行实例恢复时,会将其状态修改
为inactive,等待下一轮的使用;

所以当日志组为inactive的时候,如果数据库为归档模式.那么日志肯定是归档完成了。

最新文章

  1. http://www.cnblogs.com/holly8/p/6178828.html
  2. Max Points on a Line
  3. hdu 1114 Piggy-Bank
  4. 慕课网-安卓工程师初养成-2-1 Java中的关键字
  5. C# 颜色转换
  6. 函数响应式编程及ReactiveObjC学习笔记 (四)
  7. [Gradle] 在 Eclipse 下利用 gradle 构建系统
  8. mybatis中#{}与${}的区别
  9. Flask对象配置
  10. Django模板操作
  11. #微码分享#C++变参字符串格式化函数format_string
  12. CF1096D Easy Problem(DP)
  13. 使用JavaScript缓存图片
  14. 转:Java中字符串split() 的使用方法.
  15. Fast Packet Processing - A Survey
  16. Linked List Cycle leetcode II java (寻找链表环的入口)
  17. linux的/etc/hosts的作用
  18. Tomcat启动时报 java.lang.OutOfMemoryError: Java heap space
  19. .Net 面试总结
  20. Mybatis学习笔记(三) —— DAO开发方法

热门文章

  1. javascript中的窗口和框架
  2. Eenterprise linux服务器分区
  3. 【积累】validate验证框架的使用
  4. MVC使用Membership配置
  5. Apache 403 error, (13)Permission denied: access to / denied问题
  6. Working with Data » Getting started with ASP.NET Core and Entity Framework Core using Visual Studio » 读取关系数据
  7. 第一个Asp.net小项目,主页写了下后台代码
  8. WINDOWS7(vs2012+wdk7.6) 配置驱动开发环境
  9. 奇淫绝技:Mysql报错注入利用总结分享
  10. Scala学习(一)