ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Oracle 隐含参数 _disable_logging

Oracle 隐含参数 _disable_logging

原创 Linux操作系统 作者:xz43 时间:2011-01-26 17:21:04 0 删除 编辑

提示:Oracle的隐含参数只应该在测试环境或者在Oracle Support的支持下使用。

从Oracle的系统表中,我们知道Oracle存在一个隐含参数_disable_logging可以用于禁用日志生成,这个参数显然只能用于测试目的(可以极大提高Benchmark测试的性能),禁止日志生成必然导致事务的不可恢复性。

下面,对这个参数做一个简单测试,过程如下:

$ sqlplus / as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on 星期三 1月 26 14:46:48 2011

Copyright (c) 1982, 2005, Oracle.  All rights reserved.


连接到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
With the Partitioning, OLAP and Data Mining options

SQL>
SQL> select ksppinm,ksppdesc from x$ksppi where ksppinm like '%logging';

KSPPINM
--------------------------------------------------------------------------------
KSPPDESC
----------------------------------------------------------------------------------------------------------------------------------------------------------------
_disable_logging
Disable logging


SQL> alter system set "_disable_logging"=true;

系统已更改。

SQL> create table testlog as select * from dba_objects;

表已创建。

SQL> shutdown abort
ORACLE 例程已经关闭。

SQL> startup
ORA-32004: obsolete and/or deprecated parameter(s) specified
ORACLE 例程已经启动。

Total System Global Area 1207959552 bytes
Fixed Size                  2020352 bytes
Variable Size             234884096 bytes
Database Buffers          956301312 bytes
Redo Buffers               14753792 bytes
数据库装载完毕。
数据库已经打开。
SQL> select count(1) from testlog;
select count(1) from testlog
                     *
第 1 行出现错误:
ORA-00942: 表或视图不存在

由于未产生相应日志,数据库crash或shutdown abort之后,上一次成功完成的检查点之后变化的数据将无法恢复。

观察alert文件
从日志中我们可以看到在instance recovery中,没有数据被恢复,只有成功完成的上次检查点之前数据可以被获取,之后数据都将丢失。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/9399028/viewspace-686341/,如需转载,请注明出处,否则将追究法律责任。

下一篇: Oracle Undo的学习
请登录后发表评论 登录
全部评论
鱼儿的学习空间

注册时间:2010-11-16

  • 博文量
    422
  • 访问量
    1754973