第17章 数据库的归档模式
1. 归档模式
在归档模式下时,当LGWR后台进程的写操作从一个重做日志组切换到另一个重做日志组之后,归档写后台进程(ARCH/ARCn)就会将原来的重做日志文件的信息复制到归档日志文件中。可以把归档日志文件堪称是重做日志文件的克隆;
要使归档的操作自动化,首先必须将数据库设置为归档模式,其次要启动归档后台进程(ARCn),还要有足够的硬盘空间以存储持续产生的归档日志文件;
将数据库设置为归档模式意味:
1)当数据库崩溃(磁盘或系统文件问题所导致的)之后,所有提交数据都能恢复;
2)可以对数据库进行联机备份;
3)当某一非系统表空间脱机时,数据库的其他备份继续正常工作;
可以进行如下的不完全恢复:
1)恢复到某一特定的时间点;
2)恢复到某一特定SCN号;
3)恢复到某一特定的归档文件的结尾;
2. 数据库设置为归档模式,步骤:
1)以sysdba身份登录oracle数据库
2)使用archive log list 命令查看数据库与归档相关的信息;
3)正常关闭数据库,shutdown immediate;
4)以加载方式启动数据库,startup mount;
5)用alter database命令将数据库设置为归档模式,alter database archivelog;
6)打开数据库,alter database open;
7)验证当前数据库与归档相关的信息;
8)做数据库的全备份(备份所有的数据文件和控制文件);
3. 手动完成从重做日志文件复制到归档日志文件中
alter system archive log current;
4. 把数据库设置为归档模式之后应该立即启动归档后台进程,有两种方法启动归档日志进程
1)通过命令:alter system archive log start;
2)修改参数文件:将参数文件中的log_archive_start参数修改为true
a)使用命令检查是否为true。show parameter log_archive_start
b)如果为false,alter system set log_archive_start=true scope=spfile
c)关闭数据库shutdown immediate
d)启动数据库 startup。检查是否修改
5. 归档日志进程对外存(硬盘)写外存(硬盘),LGWR进程是读内存写外存(硬盘)。如果数据库的DML操作非常频繁,归档日志进程的读写可能跟不上LGWR。解决方法是启动多个归档后台进程。可以修改参数文件log_archive_max_processes
alter system set log_archive_max_processes=3;
show parameter log_archive_max_processes;
6. 可以通过修改参数文件中的log_archive_dest_n参数的方法来控制归档日志文件写到的物理硬盘和目录。
1)查看 show parameter log_archive_dest_
2)更改 alter system set log_archive_dest_1="LOCATION=f:\disk5\offlinelog\mandatory"
location表示归档日志文件将放在本地磁盘上;mandatory表示该目录下的归档日志文件时强制性的,即在该目录下的归档日志文件在没有写成功之前,所对应的重做日志文件不能重用;
alter system set log_archive_dest_1="LOCATION=f:\disk5\offlinelog\optional" optional表示该目录下的归档日志文件时可选的,即在该目录下的归档日志文件没有写成功,所对应的重做日志文件也可以重用。默认是optional;
3)检查是否设置成功 show parameter log_archive_dest_1
4)获得归档日志信息 select destination,binding,target,status from v$archive_dest;
5)重做日志切换命令 alter system switch logfile,切换完毕后就会产生归档日志文件;
6)查看归档日志文件 select name from v$archived_log;
7. 设置log_archive_min_succeed_dest保证成功的归档日志文件组数(最低要求)
1)查看 show parameter log_archive_min_succeed_dest,如果当前值为1,表示oracle系统只能保证写到一个本地物理路径下的归档日志文件是好的;
2)设置 alter system set log_archive_min_succeed_dest=2,表示oracle系统只能保证写到两个本地物理路径下的归档日志文件是好的,其中一个是强制性(mandatory)的而至少一个可选的(optional);
8. 设置log_archive_dest_state_n修改这个参数可以关闭或开启归档功能
1)查看 select destination,binding,target,status from v$archive_dest;
2)设置 alter system set log_archive_dest_state_1=defer,关闭归档日志
3)开启归档日志 alter system set log_archive_dest_state_1=enable;
9.改变成归档模式的应用实例
1)查看数据库当前的模式和与模式相关的其他信息
archive log list;
2)关闭数据库
shutdown immediate;
3)以加载方式启动数据库,并修改运行模式
startup mount;
alter database arvhivelog;
4)打开数据库
alter database open;
5)查看数据库的运行模式
archive log list;
注意:对oracle10g之前的版本,将数据库的运行模式改为归档之后,归档后台进程并不自动启动,需要手动启动
6)做一次数据库的全备份
posted on 2013-01-09 22:32 kangxuebin 阅读(488) 评论(0) 编辑 收藏 举报