首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 冲浪宝典 > 网络资源 > Oracle 9i中的日志模式管理基础(1)
【标  题】:Oracle 9i中的日志模式管理基础(1)
【关键字】:Oracle,9i
【来  源】:http://blog.csdn.net/seagal890/archive/2006/10/28/1354418.aspx

Oracle 9i中的日志模式管理基础(1)

 
NOARCHIVELOG模式:
u      确认日志工作模式:
第一种方法:查询v$database
SQL> select log_mode from v$database;
 
LOG_MODE
------------
ARCHIVELOG
 
表明目前数据库运行在归档日志下,即数据库在归档日志模式下工作。
第二种方法:执行命令archive log list;
SQL> archive log list

归档模式,但是目前自动存档进程未启用!
数据库日志模式            存档模式

自动存档             禁用
存档终点            D:\oracle\ora92\RDBMS
最早的概要日志序列     214
下一个存档日志序列   214
当前日志序列           216
 
u      修改日志工作模式
1、由NOARCHIVELOG模式到ARCHIVELOG模式
第一步骤:关闭数据库
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
 
第二步骤:启动数据库至MOUNT状态
SQL> startup mount;
ORACLE 例程已经启动。
 
Total System Global Area 135338868 bytes
Fixed Size                   453492 bytes
Variable Size             109051904 bytes
Database Buffers           25165824 bytes
Redo Buffers                 667648 bytes
数据库装载完毕。
 
第三步骤:执行命令alter database archivelog;进行修改
SQL> alter database archivelog;
 
数据库已更改。
 
第四步骤:确认结果
 
SQL> archive log list;
数据库日志模式            存档模式
自动存档             启用
存档终点            D:\oracle\ora92\RDBMS
最早的概要日志序列     183
下一个存档日志序列   185
当前日志序列           185
 
数据库已经运行在归档日志模式下了。
 
第五步:打开数据库,将数据库改变至OPEN状态
SQL> alter database open;
 
数据库已更改。
 
2、由ARCHIVELOG模式到NOARCHIVELOG模式
第一步骤:关闭数据库
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
 
第二步骤:启动数据库至MOUNT状态
SQL> startup mount;
ORACLE 例程已经启动。
 
Total System Global Area 135338868 bytes
Fixed Size                   453492 bytes
Variable Size             109051904 bytes
Database Buffers           25165824 bytes
Redo Buffers                 667648 bytes
数据库装载完毕。
 
第三步:执行命令alter database noarchivelog;进行修改
SQL> alter database noarchivelog;
 
数据库已更改。
 
第四步骤:确认执行结果
SQL> select log_mode from v$database;
 
LOG_MODE
------------
NOARCHIVELOG
我们看到数据库又改变为在非归档模式下工作了。
 
第五步:打开数据库,将数据库改变至OPEN状态
SQL> alter database open;
 
数据库已更改。
u      修改自动归档模式
我们看到数据库尽管运行在归档模式下,但是自动归档进程并未启用,在这种状态下我们还需要手工执行归档命令,归档日志才可以产生,如何使得数据库自动归档?
有种方法可以实现:
第一种方式:
将数据库加载至MOUNT状态,然后执行命令:alter system archive log start;
SQL> alter system archive log start;
 
系统已更改。
 
查看结果:
 
SQL> archive log list;
数据库日志模式            存档模式
自动存档             启用
存档终点            D:\oracle\ora92\RDBMS
最早的概要日志序列     183
下一个存档日志序列   185
当前日志序列           185
 
这种方式的缺点:更改并非持久的,即如果重新启动数据库,则对数据库所做出的修改又无效了。
 
第二种方式:
通过修改PFILE文件实现持久性修改:
 
在PFILE文件:init.ora中加入
log_archive_start = true
 
然后通过PFILE文件加载数据库
 
SQL> startup pfile='D:\oracle\admin\libn\pfile\init.ora' mount;
ORACLE 例程已经启动。
 
Total System Global Area 135338868 bytes
Fixed Size                   453492 bytes
Variable Size             109051904 bytes
Database Buffers           25165824 bytes
Redo Buffers                 667648 bytes
数据库装载完毕。
 
这是再查看数据库已经运行在自动存档模式下了。
 
如何由PFILE文件创建SPFILE文件?
 
SQL> create spfile='D:\oracle\ora92\database\SPFILELIBN.ORA' from PFILE='D:\oracle\admin\libn\pfile\
init.ora';
 
文件已创建。
 
Oracle9i默认会通过SPFILE文件启动数据库。
 
如何检测SPFILE文件是否存在?
查看目录:D:\oracle\ora92\database\
找到spfileSID.ora 这个文件。   其中:SID是你的数据库的SID
 
通过参数查看PFILE、SPFILE、ARCHIVE LOG等文件的详细信息
SQL> show parameter pfile;
 
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
spfile                               string      %ORACLE_HOME%\DATABASE\SPFILE%
                                                 ORACLE_SID%.ORA
SQL> show parameter spfile;
 
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
spfile                               string      %ORACLE_HOME%\DATABASE\SPFILE%
                                                 ORACLE_SID%.ORA
SQL> show parameter logfile;
SQL> show parameter archive log;
 
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
archive_lag_target                   integer     0
log_archive_dest                     string
log_archive_dest_1                   string
log_archive_dest_10                  string
log_archive_dest_2                   string
log_archive_dest_3                   string
log_archive_dest_4                   string
log_archive_dest_5                   string
log_archive_dest_6                   string
log_archive_dest_7                   string
log_archive_dest_8                   string
 
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_9                   string
log_archive_dest_state_1             string      enable
log_archive_dest_state_10            string      enable
log_archive_dest_state_2             string      enable
log_archive_dest_state_3             string      enable
log_archive_dest_state_4             string      enable
log_archive_dest_state_5             string      enable
log_archive_dest_state_6             string      enable
log_archive_dest_state_7             string      enable
log_archive_dest_state_8             string      enable
log_archive_dest_state_9             string      enable
 
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_duplex_dest              string
log_archive_format                   string      ARC%S.%T
log_archive_max_processes            integer     2
log_archive_min_succeed_dest         integer     1
log_archive_start                    boolean     TRUE
log_archive_trace                    integer     0
remote_archive_enable                string      true
standby_archive_dest                 string      %ORACLE_HOME%\RDBMS
SQL>
 
如何修改SYS用户的口令文件?
在Oracle中修改口令文件可以通过在操作系统的命令提示符下执行ORAPWD命令完成。
C:\>orapwd
Usage: orapwd file=<fname> password=<password> entries=<users>
 
 where
    file - name of password file (mand),
    password - password for SYS (mand),
    entries - maximum number of distinct DBA and OPERs (opt),
 There are no spaces around the equal-to (=) character.
 
C:\>orapwd file=c:\PWDlibn.ora password=sysadmin1 entries=5;
 
orapwd file=c:\PWDlibn.ora password=sysadmin1 entries=5;
 
产生新的PWDlibn.ora口令文件后,将其复制到D:\oracle\ora92\database\ 目录下替换掉原来的文件即可。
 
 
u      存档参数
init.ora文件中可以包含不同的参数,以便指定应该对存档的重做日志文件制作的副本数量、存储这些副本的位置,甚至是存档文件的文件名的格式。此外,还可以指定使用多少个存档进程来创建存档的文件。
 
目标参数
LOG_ARCHIVE_DEST
LOG_ARCHIVE_DUPLEX_DEST
只需要将参数键入init.ora文件,后面加上预期的存档位置即可。
 
log_archive_start = true
log_archive_dest=D:\oracle\ora92\rdbms
log_archive_duplex_dest=D:\oracle\ora92\rdbms
 

LOG_ARCHIVE_DEST_N
LOG_ARCHIVE_DEST_N参数(其中的N是一个指定的位置,范围是1——10)允许最多指定10个位置来存储存档的文件。此外,其中一个位置可以位于一台不同的计算机上,如文件服务器或备用计算机站点的远程位置,以便在主要的计算机中心发生自然灾害或者人为事故时使用。
 
注意:这两组参数不能同时使用。
 
u      文件名参数
 
LOG_ARCHIVE_FORMAT
 
文件名选项
选 项
说 明
%s
包括日志序列号,作为文件名的一部分
%S
包括日志序列号并使用0填充左侧,作为文件名的一部分
%t
包括线程号,作为文件名的一部分
%T
包括线程号并使用0填充左侧,作为文件名的一部分
 
通常的样式:           ARC%S.%T 
数据库连接串大全:【上一篇】
SQLServer实现工具的中英文界面互换:【下一篇】
【相关文章】
  • 监控oracle的触发器语句
  • Oracle 发布自己的Enterprise Linux
  • 只有偏执狂才能生存-Oracle开始对Red Hat Linux用户提供服务支持
  • 文本文件中的内容导入到oracle表中
  • oracle字符集理解
  • oracle数据磁盘阵列恢复
  • 找出oracle中一对多关系字段
  • Oracle11g的新特性-11g New Features
  • Oracle数据库的基础概念和基础操作
  • Oracle运算符和函数
  • 【随机文章】
  • HTML标记大全参考手册
  • 需求分析的全过程
  • 2001年9月计算机等级考试二级C语言上机试题(4、5、6)
  • Linux shell 脚本
  • 使用JBUilder开发struts国际化程序的一点小问题
  • 头部属性全接触
  • 权限系统概要
  • [FreeBSD make config-recursive patch]
  • 通过C++ Interop把Windows表单集成到MFC应用程序中
  • 什么是中间件
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.