楼主: eygle

[精华] Nologging到底何时才能生效?

[复制链接]
论坛徽章:
86
ITPUB元老
日期:2005-02-28 12:57:002012新春纪念徽章
日期:2012-01-04 11:49:542012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:20咸鸭蛋
日期:2012-05-08 10:27:19版主8段
日期:2012-05-15 15:24:112013年新春福章
日期:2013-02-25 14:51:24
21#
发表于 2004-7-14 11:55 | 只看该作者

8i metalink

http://metalink.oracle.com/metal ... T&p_id=212119.1


fact: Oracle Server - Enterprise Edition 8.1
symptom: Redo generation during direct load inserts (with APPEND hint) do
not decrease
symptom: LOGGING/NOLOGGING table flag has no effect
symptom: Database stands in noarchivelog mode
cause: Logging during direct load inserts are not well documented (bug
905174). The database must be in ARCHIVELOG mode for online redo records to be
written.



Fix
===

Changing the LOGGING flag of tables do not have any effect when the database is
in noarchivelog mode. If the database is in archivelog mode, LOGGING/NOLOGGING
flag on the table object will have an effect on redo generation during direct
load insert.

Explanation
===========
LOGGING/NOLOGGING table flag has no effect when a database is in
NOARCHIVELOG mode "for any operation that supports nologging", not only
for direct-path load.

Check  for a complete list of operations that supports
NOLOGGING mode.

References
==========
Note:199298.1
- Diagnosing excessive redo generation
Note:188691.1
- How to Avoid Generation of Redolog Entries
Note:167492.1
- How to Find Sessions Generating Lots of Redo
Note:94402.1
- Oracle8i: Temporary Tables and Redo Generated
- LOGGING OPTION DOES NOT LOG IN NOARCHIVE MODE, NOT WELL

使用道具 举报

回复
招聘 : Linux运维
论坛徽章:
2
授权会员
日期:2005-10-30 17:05:33会员2006贡献徽章
日期:2006-04-17 13:46:34
22#
发表于 2004-7-17 09:39 | 只看该作者
nologging的是生效问题搞清楚了,那么关于这块的数据备份与恢复该如何?数据既然是ARCHIVELOG模式的,那么就是说数据是不允许丢失的,如果对数据指定NOLOGGING,数据文件损坏,这部分数据该如何恢复?
SQL> insert into b select * from a;

18 rows inserted

SQL> commit;

Commit complete

SQL> select * from b;

select * from b

ORA-01578: ORACLE 数据块损坏(文件号8,块号138)
ORA-01110: 数据文件 8: 'D:\ORACLE\ORADATA\STUDY\A.ORA'
ORA-26040: 数据块是使用 NOLOGGING 选项装入的

使用道具 举报

回复
招聘 : 数据库管理员
论坛徽章:
21
授权会员
日期:2005-10-30 17:05:332012新春纪念徽章
日期:2012-02-13 15:11:362012新春纪念徽章
日期:2012-02-13 15:11:362012新春纪念徽章
日期:2012-02-13 15:11:362012新春纪念徽章
日期:2012-02-13 15:11:36马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:142012新春纪念徽章
日期:2012-02-13 15:11:36
23#
发表于 2004-7-17 10:29 | 只看该作者
使用nologging就要担负将来不能恢复的危险。

使用nologging建立的对象在对他们进行备份前,都被认为是"not recoverable"的。所以nologging操作之后要对他们进行备份。

使用道具 举报

回复
招聘 : 数据库管理员
论坛徽章:
21
授权会员
日期:2005-10-30 17:05:332012新春纪念徽章
日期:2012-02-13 15:11:362012新春纪念徽章
日期:2012-02-13 15:11:362012新春纪念徽章
日期:2012-02-13 15:11:362012新春纪念徽章
日期:2012-02-13 15:11:36马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:142012新春纪念徽章
日期:2012-02-13 15:11:36
24#
发表于 2004-7-18 16:08 | 只看该作者
对于每个数据文件,都有一个unrecoverable SCN 记录。

执行nologging以后,会在控制文件中相应的数据文件部分记录下这个unrecoverable SCN ,表示这个数据文件从这个scn后是不可恢复的。主要用于RMAN做恢复时的判断。


SQL> create table nologtab nologging
  2  as select * from dba_users;

Table created.

***************************************************************************
DATA FILE RECORDS
***************************************************************************
(blkno = 0x16, size = 180, max = 254, in-use = 4, last-recid= 3)
DATA FILE #1:
  (name #6) D:\ORACLE\ORADATA\DONNYDB2\SYSTEM01.DBF
creation size=0 block size=8192 status=0xe head=6 tail=6 dup=1
tablespace 0, index=1 krfil=1 prev_file=0
[B]unrecoverable scn: 0x0000.0064a5db[/B] 07/18/2004 16:02:45
Checkpoint cnt:830 scn: 0x0000.00649757 07/18/2004 14:52:50

使用道具 举报

回复
招聘 : 数据库管理员
论坛徽章:
3
授权会员
日期:2005-10-30 17:05:33会员2006贡献徽章
日期:2006-04-17 13:46:34ITPUB 11周年纪念徽章
日期:2012-10-09 18:05:07
25#
发表于 2004-7-28 15:07 | 只看该作者
讨论了半天,没有结论性的发言么?
斑竹!!~~~~~~~~

”请对方辩手做总结陈词!“  

使用道具 举报

回复
论坛徽章:
117
ITPUB元老
日期:2005-02-28 12:57:002012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:20版主7段
日期:2012-05-15 15:24:11ITPUB 11周年纪念徽章
日期:2012-09-28 17:34:42ITPUB 11周年纪念徽章
日期:2012-10-09 18:03:32紫蛋头
日期:2013-03-04 17:00:07优秀写手
日期:2013-12-18 09:29:09
26#
 楼主| 发表于 2004-7-28 15:41 | 只看该作者
最初由 winkexp 发布
[B]讨论了半天,没有结论性的发言么?
斑竹!!~~~~~~~~

”请对方辩手做总结陈词!“   [/B]


哪个问题没说清楚?
你需要什么结论?

使用道具 举报

回复
招聘 : 售前/售后支持
论坛徽章:
5
ITPUB元老
日期:2005-04-25 13:27:42授权会员
日期:2005-10-30 17:05:33会员2006贡献徽章
日期:2006-04-17 13:46:34ITPUB8周年纪念徽章
日期:2009-09-27 10:21:21祖国60周年纪念徽章
日期:2009-10-09 08:28:00
27#
发表于 2004-9-1 17:53 | 只看该作者
请问使用Direct-path loads (SQL*Loader) 的时候情况是怎么样的呢?

使用道具 举报

回复
论坛徽章:
7
数据库板块每日发贴之星
日期:2005-06-22 01:01:25数据库板块每日发贴之星
日期:2006-01-17 01:02:21数据库板块每日发贴之星
日期:2006-02-09 01:02:22会员2006贡献徽章
日期:2006-04-17 13:46:34会员2007贡献徽章
日期:2007-09-26 18:42:10ITPUB新首页上线纪念徽章
日期:2007-10-20 08:38:44生肖徽章2007版:猴
日期:2008-01-02 17:35:53
28#
发表于 2004-9-14 10:35 | 只看该作者
各位﹐我想知道為什么我在做這個實驗的時候﹐會出現

alter table sys_table3 nologging

SQL> insert /*+ append */ into sys_table3
  2    select * from sys_table1;

建立了 32768 列

目前歷時: 00:00:00.03

Execution Plan
----------------------------------------------------------
ERROR:
ORA-12838: 在修改物件後即無法平行地讀取或修改它


SP2-0612: 產生 AUTOTRACE EXPLAIN 報表時發生錯誤

的錯誤


WHY?

使用道具 举报

回复
论坛徽章:
7
ITPUB元老
日期:2005-03-31 11:28:36授权会员
日期:2005-10-30 17:05:33会员2006贡献徽章
日期:2006-04-17 13:46:34ITPUB8周年纪念徽章
日期:2009-09-27 10:21:21
29#
发表于 2005-9-15 23:05 | 只看该作者
这个和相关的几个帖子让我受益很多,顶起来让大家看一下。

使用道具 举报

回复
论坛徽章:
0
30#
发表于 2005-10-10 14:52 | 只看该作者
moleng lia kou

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表