归档日志进程是一个可选的进程,该进程并不是在实例启动时启动,此进程的作用是将写满的重做日志文件的数据写到一个归档日志中,这个归档日志是用来介质故障时的数据库修复。生产环境强烈建议开启归档。我们使用ps -ef | grep oracle 查看下oracle的经典的几个进程【系统监控进程、进程监控进程、重做日志写进程、数据库写进程、检查点进程】,发现没有归档进程??这是因为我们数据库没有开启归档,那么如何开启归档??
登录sqlplus,开启归档1.shutdown immediate;2.startup mount;3.alter database archivelog;4.alter database open;5.archive log list;
开启归档后,再此查看下归档进程是否存在ps -ef | grep oracle
知道开归档之外还要知道如何关闭归档??关闭数据库1.shutdown immediate2.startup mount3.alter database noarchivelog4.archive log list 查看归档是否开启查找归档文件路径show parameter log_archive_format;查看归档日志格式,格式含义官方解释如下%s ——log sequence number; 日志序列号%t —— thread number; 重做线程编号%r —— resetlogs ID that ensures unique names are constructed for the archived log files across multiple incarnations of the database; RESETLOGS的ID值show parameter DB_RECOVERY_FILE_DEST;查看归档目录
归档目录里可以看到之前的已经归档的目录文件
那么想问菜鸡哥哥,归档什么时候会生成呢?自动归档:当重做日志写满的时候,会面临2种选择,1:把以前的redo logfile擦除重新写;2:把写入的重做日志备份归档,再重新写;通过使用归档日志(开启归档模式),可以保留所有重做历史记录,当数据库处于ARCHIVELOG模式并进行日志切换式,后台进程ARCH会将重做日志的内容保存到归档日志中。手动归档:dba必须手动执行归档命令进行归档,ALTER SYSTEM ARCHIVELOG ALL;
本文转自 rm_rf_d 51CTO博客,原文链接:http://blog.51cto.com/12185273/2048871,如需转载请自行联系原作者