CTAS、Nologging以及数据库运行模式

原创 2004年07月14日 13:48:00

iputb讨论链接:

http://www.itpub.net/showthread.php?threadid=242761

我们看以下测试:

SQL> archive log list
Database log mode              No Archive Mode
Automatic archival             Enabled
Archive destination            /opt/oracle/oradata/hsjf/archive
Oldest online log sequence     156
Current log sequence           158
SQL> @redo
SQL> select * from redo_size;

     VALUE
----------
     80892

SQL> create table test nologging as select * from dba_objects;

Table created.

SQL> select * from redo_size;

     VALUE
----------
    118024

SQL> drop table test;

Table dropped.

SQL> select * from redo_size;

     VALUE
----------
    139732

SQL> create table test as select * from dba_objects;

Table created.

SQL> select * from redo_size;

     VALUE
----------
    176864

SQL> select (176864 -139732) redo2,(118024 -80892) redo1 from dual;

     REDO2      REDO1
---------- ----------
     37132      37132

SQL> drop table test;

Table dropped.

SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup mount;
ORACLE instance started.

Total System Global Area  235999908 bytes
Fixed Size                   451236 bytes
Variable Size             201326592 bytes
Database Buffers           33554432 bytes
Redo Buffers                 667648 bytes
Database mounted.
SQL> alter database archivelog;

Database altered.

SQL> alter database open;

Database altered.

SQL> @redo
SQL> select * from redo_size;

     VALUE
----------
     35768

SQL> create table test nologging as select * from dba_objects;

Table created.

SQL> select * from redo_size;

     VALUE
----------
     73860

SQL> drop table test;

Table dropped.

SQL> select * from redo_size;

     VALUE
----------
     95596

SQL> create table test as select * from dba_objects;

Table created.

SQL> select * from redo_size;

     VALUE
----------
   1215092

SQL> select (1215092 -95596) redo2,(73860 -35768) from dual;

     REDO2 (73860-35768)
---------- -------------
   1119496         38092
.

 

结论:

显然ctas的Nologging在archivelog模式下才会不记录redo,而在Noarchivelog模式下会产生同样多的redo
在归档模式下的CTAS nologging应该等价于非归档模式下ctas + insert append

 

【优化批量插入】nologging和append使用解析

Nologging 更改表的日志记录方式 Alter table table_name nologging; Alter table table_name logging; 数据库和表空间也可...
  • wang1016612067
  • wang1016612067
  • 2016年10月08日 22:18
  • 517

NOLOGGING的正确用法

今天在看以前一些工作文档,发现有些DML脚本,用到了nologging的hint,即/*+NOLOGGING*/,这样写到底能不能减少日志量了??带着疑问,我做了以下测试: 1. 直接update,...
  • qinyu100
  • qinyu100
  • 2013年06月11日 23:44
  • 1696

Oracle重建表(CTAS+rename)注意事项总结

一、概述 前一段时间,有一个DBA朋友在完成重建表(rename)工作后,第二天早上业务无法正常运行,出现数据无法插入的限制和错误,后来分析才发现,错误的原因是使用rename方式重建表以后,其它引...
  • halou90
  • halou90
  • 2015年10月20日 14:15
  • 1550

nologging对delete以及update效果不大

SQL> create table a (id int); Table created. SQL> begin for i in 1..10000 loop   2  insert into a...
  • haiyang_tian20140616
  • haiyang_tian20140616
  • 2014年11月12日 22:04
  • 824

不可恢复的NOLOGGING 数据库对象

不可恢复的NOLOGGING 数据库对象 1) 备份users表空间 [oracle@ocmu ~]$ rman target /   Recovery Manager: Release 11...
  • demonson
  • demonson
  • 2014年10月08日 10:50
  • 341

快速向表中插入大量数据Oracle中append与Nologging

当需要对一个非常大的表INSERT的时候,会消耗非常多的资源,因为update表的时候,oracle需要生成 redo log和undo log;此时最好的解决办法是用insert, 并且将表设置为n...
  • liuyuehui110
  • liuyuehui110
  • 2015年03月10日 11:20
  • 826

快速向表中插入大量数据Oracle中append与Nologging

当需要对一个非常大的表INSERT的时候,会消耗非常多的资源,因为update表的时候,oracle需要生成 redo log和undo log;此时最好的解决办法是用insert, 并且将表设置为n...
  • lJean
  • lJean
  • 2016年04月19日 11:50
  • 1992

25分钟掌握Hive基本操作

15分钟掌握Hive基本操作   (1)、从本地文件系统中导入数据到Hive表; (2)、从HDFS上导入数据到Hive表; (3)、从别的表中查询出相应的数据并导入到Hive表中; (4)...
  • tanggao1314
  • tanggao1314
  • 2016年05月29日 16:33
  • 7673

Corrupt block 常见处理方法--之NOLOGGING 操作引起的坏块解决方法

【本文目的】 介绍当将某些数据段设置成NOLOGGING模式后,常见的坏块发生后的处理方法及相关解释 【适用版本】 适用于 Oracle Database - Enterprise Edition...
  • wengtf
  • wengtf
  • 2014年02月20日 10:38
  • 1780

Tomcat之——运行模式

tomcat的运行模式有3种 1、bio 默认的模式,性能非常低下,没有经过任何优化处理和支持. 2、nio 利用java的异步io护理技术,noblocking IO技术. 想运行在该模式下,...
  • l1028386804
  • l1028386804
  • 2017年04月07日 23:41
  • 842
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:CTAS、Nologging以及数据库运行模式
举报原因:
原因补充:

(最多只允许输入30个字)