网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 数据库 > Oracle教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
数据库:数据库教程,数据库技巧,Oracle教程,MySQL教程,Sybase教程,Access教程,DB2教程,数据库安全,数据库文摘
本月文章推荐
.创建一个ORACLEstandby database.
.Oracle协作套件:完全集成数据库.
.Oracle 9i 视图.
.oracle8i在linux9的安装步骤.
.如何将 Oracle 数据导出到 Excel.
.在oracle中如何有效应用时间的有.
.Oracle9i初始化参数中文说明.
.Oracle10g R2 EMCA常用命令及实例.
.ORACLE 10g调度例行任务解放DBA时.
.Oracle rac安装过程详解(七).
.Oracle Database 10g 中新特性.
.杀掉Oralcle的一些session的几条.
.双机容错环境下Oracle数据库的具.
.ORACLE供应链管理系统.
.详细讲解Oracle数据库管理员的工.
.Oracle 10g 中新的 SQL 优化.
.Section 6. Solutions to common.
.Oracle中password file的作用及说.
.[范例]怎样判断画布中有重复记录.
.如何将Oracle的数据倒入EXCEL中的.

OARCLE数据库归档模式的设置

发表日期:2008-2-9


  在Oracle数据库的开发环境和测试环境中,数据库的日志模式和自动归档模式一般都是不设置的,这样有利于系统应用的调整,也免的生成大量的归档日志文件将磁盘空间大量的消耗。 但在系统上线,成为生产环境时,将其设置为日志模式并自动归档就相当重要了,因为,这是保证系统的安全性,有效预防灾难的重要措施。这样,通过定时备份数据库和在两次备份间隔之间的日志文件,可以有效的恢复这段时间的任何时间点的数据,可以在很多时候挽回或最大可能的减少数据丢失。虽然ORACLE数据库的日志模式和自动归档设置并不复杂,但其中的一些概念和操作过程还是轻易混淆的,现在根据本人的经验,分析介绍如下,所用环境为UNIX(HPUX,SOLARIES,AIX,TRU64UNIX)和ORACLE8.
  
  一 要使OARCLE数据库进行日志的自动归档,需要做两方面的事情,一是数据库日志模式的设置(database log mode,可为Archive Mode和No Archive Mode),另外就是自动归档模式设置(Automatic archival,可为Enabled和Disabled)。
  
  二 如何查看数据库的现行日志和自动归档模式的设置:
  
  可用archive log list命令来查看。
  
  例如:
  
  运行在日志自动归档模式下的数据库系统查看结果如下(一般是生产环境)
  
  SVRMGR> archive log list
  
  Database log mode       Archive Mode
  
  Automatic archival       Enabled
  
  Archive destination      /backup/archivelog
  
  Oldest online log sequence   2131
  
  Next log sequence to archive  2133
  
  Current log sequence      2133
  
  没有启动数据库日志模式和自动归档的数据库系统查看结果如下(一般是测试环境)
  
  SVRMGR> archive log list
  
  Database log mode       No Archive Mode
  
  Automatic archival       Disabled
  
  Archive destination      /u01/app/oracle/prodUCt/8.0.5/dbs/arch
  
  Oldest online log sequence   194
  
  Current log sequence      196
  
  三 数据库日志模式的设置
  
  在创建数据库时,可以在CREATE DATABASE 语句中指定数据库的日志模式。假如没有指明,则缺省为NOARCHIVELOG模式。由于假如在创建数据库时指明是Archive Mode的话,会增加约20%的创建时间,而在以后启动INSTANCE时再设置的话,一般只用去几秒的时间,所以一般在创建数据库时是不设置为ARCHIVE MODE的。
  
  如要确定一系统数据库的日志模式设置,除了(二)中的方法外也可以执行如下操作查看:
  
  SVRMGR> Select * from V$DATABASE
  
  NAME CREATED      LOG_MODE   CHECKPOINT ARCHIVE_CH
  
  ---- ----------------- ------------ ---------- ----------
  
  ORCL 05/21/97 17:55:06 NOARCHIVELOG 172185   170808
  
  将数据库的日志模式设置切换(Archive Mode 和No Archive Mode之间的切换)的步骤和操作如下:
  
  1. 关闭运行的数据库实例
  
  SVRMGRL> shutdown
  
  在进行日志模式切换之前,必须将运行的数据库正常关闭。
  
  2. 备份数据库
  
  该备份跟以后产生的日志一起用于将来的灾难恢复(很重要,如要改为归档日志模式,没有这个数据库备份,仅有日志文件是无法从该时间点恢复的)。
  
  3. 启动数据库实例到mount状态,但不要打开。
  
  SVRMGRL> startup mount
  
  注重:假如是使用OPS的话,请只打开一个数据库实例进行模式切换操作。
  
  4. 切换数据库日志模式。
  
  SVRMGRL> alter database archivelog;(设置数据库为归档日志模式)
  
  或
  
  SVRMGRL> alter database noarchivelog;(设置数据库为归档日志模式)
  
  5. 打开数据库
  
  SVRMGRL> alter database open;
  
  6. 确认数据库现在处于归档日志模式。

  
  SVRMGRL> archive log list;
  
  Database log mode        Archive Mode
  
  Automatic archival       Enabled
  
  Archive destination       for example: $ORACLE_HOME/dbs/arch
  
  Oldest on-line log sequence   275
  
  Next log sequence        277
  
  Current log sequence      278
  
  7. 将这个时间点的redo logs归档
  
  SVRMGRL> archive log all;
  
  8. 确认新产生的日志文件已在相应的归档目录下面。
  
  四 自动归档模式设置(Automatic archival,可为Enabled和Disabled),在该模式下,数据库启动一个arch进程,专门负责将redo logs写到系统归档设备的相应目录下。
  
  在数据库的参数文件中设置参数(一般是在$ORACLE_HOME/dbs/init*.ora文件中):
  
  LOG_ARCHIVE_START=
  
  LOG_ARCHIVE_DEST=
  
  LOG_ARCHIVE_FORMAT=
  
  LOG_ARCHIVE_START:
  
  如要求自动归档的话,则设为TRUE,如要求为非自动归档的话,则设为FALSE
  
  LOG_ARCHIVE_DEST:
  
  该参数设定了archive logs 归档存放的路径.
  
  LOG_ARCHIVE_FORMAT:
  
  该参数设定了archive logs的命名格式. 例如,如将格式设为: arch%s.arc
  
  log 文件将为: arch1.arc, arch2.arc, arch3.arc
  
  这几个参数设置只有在数据库实例启动前设置才能生效,假如在数据库运行中进行设置,要使其生效,必须重起数据库。
  
  假如数据库正在运行中,不能即刻重起,要设置其为自动归档模式,则做如下操作:
  
  SVRMGRL> ALTER SYSTEM ARCHIVE LOG START;
  
  如要设置其为非自动归档模式(取消自动归档),则:
  
  SVRMGRL> ALTER SYSTEM ARCHIVE LOG STOP;
  
  但假如数据库重起后,给语句修改的结果就失效了,自动归档的设置还是按照系统参数文件中的LOG_ARCHIVE_START的值来设置。
  
  五 几种设置情况:
  
  (1) Database log mode       Archive Mode
  
  Automatic archival       Enabled
  
  这是在大部分生产环境中的ORACLE数据库日志及归档模式设置,这种情况下,做好数据库的定期备份(有热备和冷备)和归档日志备份,可有效的将数据库恢复到有归档日志的全部时间点。
  
  (2) Database log mode       Archive Mode
  
  Automatic archival       Disabled
  
  这种情况下,数据库不能自动归档,需要进行手工归档。假如所有在线日志都写满了,又没有的及时进行手工归档的话,由于LGWR没有可用的在线日志可写,数据库将会挂在这儿,只有进行手工归档后,有可用的在线日志后才能继续。在生产环境中应该避免这种情况。
  
  手工归档操作如下:
  
  SVRMGRL> ALTER SYSTEM ARCHIVE LOG ALL;
  
  数据库将会把在线日志进行归档处理
  
  (3) Database log mode       NO Archive Mode
  
  Automatic archival       Enabled
  
  有些相对欠缺经验的治理员在进行设置时,只在数据库参数文件中设置了LOG_ARCHIVE_START=TRUE,然后在数据库起来后查看到ARCH归档进程已经起来了,可是尽管ORACLE已经作了几次日志切换,但还是没有归档日志,这时的设置就是这种情况,假如数据库不是处在ARVHIVELOG模式,redolog 还是不会被归档。
  
  (4) Database log mode       NO Archive Mode
  
  Automatic archival       Disabled
  
  这种设置是刚安装的oracle数据库的缺省设置,开发环境也大部分如此。即没有进行归档。
上一篇:临时表空间的使用问题 人气:647
下一篇:压缩数据以节省空间和提高速度 人气:961
浏览全部Oracle教程的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐