--==================================================-- 日志记录模式(LOGGING 、FORCE LOGGING 、NOLOGGING)--==================================================
一、日志记录模式(LOGGING 、FORCE LOGGING 、NOLOGGING)1.三者的含义LOGGING:当创建一个数据库对象时将记录日志信息到联机重做日志文件。LOGGING实际上是对象的一个属性,用来表示在创建对象时是否记录REDO日志,包括在做DML时是否记录REDO日志。一般表上不建议使用NOLOGGING,在创建索引或做大量数据导入时,可以使用NOLOGGING 。FORCE LOGGING:简言之,强制记录日志,即对数据库中的所有操作都产生日志信息,并将该信息写入到联机重做日志文件。NOLOGGING:正好与LOGGING、FORCE LOGGING 相反,尽可能的记录最少日志信息到联机日志文件。FORCE LOGGING可以在数据库级别、表空间级别进行设定、而LOGGING与NOLOGGING可以在数据对象级别设定。在使用DATA GUARD 时,要求使用强制记录日志模式。注:FORCE LOGGING并不比一般的LOGGING记录的日志多,数据库在FORCE LOGGING状态下,NOLOGGING选项将无效,因为NOLOGGING将破坏DATAGUARD的可恢复性.FORCE LOGGING强制数据库在任何状态下必须记录日志。2.与归档模式及非归档模式之间的关系日志记录模式与归档模式之间并不能等同,归档模式是指对系统产生的日志是否进行归档或不归档。归档模式下,将日志记录到日志文件,并进行归档。非归档模式下,同样将日志记录到日志文件,只不过不归档而已,容易丢失日志。日志的记录模式则不论是否处于归档或非归档,可以对日志进行记录,强制记录,或少记录日志。归档模式中的LOGGING或FORCE LOGGING 支持介质恢复,而NOLOGGING 模式不支持介质恢复。基于NOLOGGING模式操作所产生的日志远小于LOGGING模式产生的日志,即NOLOGGING模式最小化日志记录。3.优先级别:当数据库使用FORCE LOGGING时,具有最高优先级别,其次是表空间级别的FORCE LOGGING。即是当一个对象指定NOLOGGING时,而表空间或数据库级别的日志模式为FORCE LOGGING,则该选项不起作用,直到表空间或数据库级别的FORCE LOGGING解除。一般建议将整个数据库设置为FORCE LOGGING或基于表空间级别设定FORCE LOGGING,而不建议两者都设置为FORCE LOGGING。当数据库或表空间使用非强制日志模式时,则日记记录优先级别由低到高为:数据库、表空间、数据对象二、三者的使用情况1.LOGGING模式这是日志记录的缺省模式,无论数据库是否处于归档模式,这并不改变表空间与对象级别上的缺省的日志记录模式。对于临时表空间将不记录日志到联机重做日志文件。2.NOLOGGING模式此模式不是不记录日志,而是最小化日志产生的数量,通常在下列情况下使用NOLOGGINGSQL*Loader in direct modeINSERT /*+APPEND*/ ...CTASALTER TABLE statements (move/add/split/merge partitions)CREATE INDEXALTER INDEX statements (move/add/split/merge partitions)NOLOGGING与表模式,插入模式,数据库运行模式(archived/unarchived)的关系:下面仅说明使用append方式插入数据时日志产生的情况,如使用下面的方式进行插入insert /*+append+*/ into tb_name select colnam1,colname2 from table_name;数据库处于归档模式当表模式为logging状态时,无论是否使用append模式,都会生成redo.当表模式为nologging状态时,只有append模式,不会生成redo。数据库处于非归档模式无论是在logging还是nologing的模式下,append的模式都不会生成redo,而no append模式下都会生成redo。   2.FORCE LOGGING模式设定数据库为Force Logging模式后,数据库将会记录除临时表空间或临时回滚段外所有的操作,而忽略类似NOLOGGING之类的指定参数。通过下面的操作来修改ALTER DATABASE FORCE LOGGING;ALTER TABLESPACE tablespace_name FORCE LOGGING;取消FORCE LOGGING模式ALTER DATABASE NO FORCE LOGGING;ALTER TABLESPACE tablespace_name NO FORCE LOGGING;3.查看不同级别的日志模式查看数据库级别日志的归档模式、记录模式 SQL> select log_mode,force_logging from v$database;LOG_MODE     FORCE_LOGGING------------ -------------
ARCHIVELOG   NO查看表空间级别的日志记录模式SQL> select tablespace_name,logging,force_logging from dba_tablespaces;TABLESPACE_NAME LOGGING   FORCE_LOGGING--------------- --------- -------------
SYSTEM          LOGGING   NOUNDOTBS1        LOGGING   NOSYSAUX          LOGGING   NOTEMP            NOLOGGING NOUSERS           LOGGING   NO   查看对象级别的日志记录模式scott@ORCL> select table_name,logging from user_tables;TABLE_NAME                     LOG------------------------------ ---
TB_A                           YESTB_B                           YES4.日志记录模式的转换a.数据库从非强制日子模式切换到强制日志模式sys@ORCL> alter database force logging;     b.数据库从强制日志模式切换到非强制日志模式sys@ORCL> alter database no force logging;c.表空间级别从强制日志模式切换到非强制日志模式sys@ORCL> alter database no force logging;d.表空间级别从非强制日志模式切换到强制日志模式sys@ORCL> alter database no force logging;e.对象级别日志记录模式sys@ORCL> alter table tb_a nologging;     --不记录日志模式
sys@ORCL> alter table tb_a logging;       --采用日志记录模式
三、LOB段上有关NOLOGGING与LOGGING的情况计算所有LOB的大小:SELECT SUM(BYTES)/1024/1024/1024 as LOB_Size FROM user_segmentsWHERE segment_type='LOBSEGMENT';计算所有nologging的大小SELECT SUM(s.BYTES)/1024/1024/1024 as Nologging_sizeFROM user_segments s,user_lobs lWHERE s.segment_type='LOBSEGMENT'AND l.LOGGING='NO' AND l.SEGMENT_NAME=s.SEGMENT_NAME;列出所有nologging/logging 的lobs和对应的表空间及其大小:SELECT s.segment_name,s.bytes,s.TABLESPACE_NAMEFROM user_segments s,user_lobs lWHERE s.segment_type='LOBSEGMENT'AND l.LOGGING='NO' AND l.SEGMENT_NAME=s.SEGMENT_NAME;SELECT s.segment_name,s.bytes,s.TABLESPACE_NAMEFROM user_segments s,user_lobs lWHERE s.segment_type='LOBSEGMENT'AND l.LOGGING='YES' AND l.SEGMENT_NAME=s.SEGMENT_NAME;计算LOB段上nologging/logging的数量SELECT COUNT(*) FROM user_lobs WHERE logging='NO';SELECT COUNT(*) FROM user_lobs WHERE logging='YES';

转载于:https://www.cnblogs.com/cnjava/archive/2012/04/09/2439497.html

日志记录模式(LOGGING 、FORCE LOGGING 、NOLOGGING)相关推荐

  1. (4.7)mysql备份还原——深入解析二进制日志(3)binlog的三种日志记录模式详解...

    关键词:binlog模式,binlog,二进制日志,binlog日志 目录概述 0.binlog概述 查看binlog日志参数设置: show variables like '%log_bin%'; ...

  2. java util logging_简单日志记录,使用java.util.logging

    jsp+servlet+JavaBean模式下,可以做个简单的日志记录,日志文件保存在服务器.(Tomcat) package controller; import java.io.File; imp ...

  3. keil debug如何在watch直接修改变量值_python日志记录系列教程,内置logging模块(一),直接使用logging模块的基础日志记录

    前言:成熟的软件开发不可避免的要进行日志记录,python内置模块logging提供了强大的日志记录能力,本文将从多个角度,由浅入深的介绍logging的常见使用方法和一些基本概念,本此系列文章分为两 ...

  4. 【Spring Boot】Spring Boot Logging 示例 | 日志记录

    文章目录 logging.level | 设置日志级别 logging.file | 指定输出日志文件的路径和名称 logging.path | 指定输出日志文件的路径 logging.pattern ...

  5. Force Logging参数详解

    Force Logging参数详解 一.什么是Force Logging? 想必大家知道有一些DDL语句可以通过指定NOLOGGING子句的方式避免写REDO(目的是提高 速度,某些时候确实有效).指 ...

  6. oracle数据库日志记录内容,oracle日志记录方式

    oracle日志记录模式 oracle 日志记录模式(LOGGING.FORCE LOGGING.NOLOGGING) 1.LOGGING(默认):当创建一个数据库对象时将记录日志信息到联机重做日志文 ...

  7. python日志记录_Python日志记录

    python日志记录 To start, logging is a way of tracking events in a program when it runs and is in executi ...

  8. 模块单元学习笔记(日志记录模块os模块sys)

    一.日志记录模块 Logging 默认情况下,logging将日志打印到屏幕,日志级别大小关系为:CRITICAL > ERROR > WARNING > INFO > DEB ...

  9. 思科交换机配置syslog记录日志到syslog watcher日志记录软件

    C3560#config t C3560(config)#logging on C3560(config)#logging host 192.168.210 //日志服务器的IP地址 C3560(co ...

  10. 一文带你扫盲日志记录的基础知识

    文章目录 一.日志记录入门 二.日志记录域 三.日志记录安全使用场景 四. 设计.实现和测试注意事项 五. 要记录的事件 六.事件属性 七.使用 OWASP 进行安全日志记录 监控应用程序基础结构的健 ...

最新文章

  1. python CST中国标准时间格式转换
  2. 小菜鸟学 Spring-Dependency injection(二)
  3. python执行adb命令_Python实现对adb命令封装
  4. pandas打开csv表格表头错位问题解决
  5. 自制简易前端MVC框架
  6. Ubuntu环境下的VirtualBox,连接Redhat虚拟机的步骤
  7. 用VBA编程时,如何对当前的工作表进行选定[收集]
  8. java解析未知key json_获取JsonObject某一未知key的值操作
  9. android程序 获取flash容量大小,Android用WebView加载flash大文件偶然会出现内存溢出以及蓝色打问号小方块问题的解决方案...
  10. NLP(五十二)抽取式词义消歧(WSD)
  11. 科普硬解,软解,gpu,dsp等等的关系
  12. php通过imap获取腾讯企业邮箱信息后的解码处理
  13. 多期DID和事件研究法含文献和do代码
  14. 做一个软件需要了解的知识
  15. Beyond Compare 使用方法
  16. java sql查询空内容_返回null值而不是sql查询中的空集
  17. php 上上级目录的表示
  18. 我心目中前端css框架排行榜
  19. 【Python】近似熵,样本熵,模糊熵计算高效版
  20. linux主机之间使用密钥对无密码登录/SCP无密码拷贝服务器文件

热门文章

  1. 阿里云HPC--人工智能加速利器
  2. js 邮箱、11位手机正则
  3. CLR中的程序集加载
  4. spring MVC三种统一异常处理的方法
  5. 17_购物车删除商品与清空购物车
  6. JAVA 基础语法(一)——变量以及基本数据类型
  7. git clone 非空目录
  8. SCOI2018酱油记
  9. HDU1564 Play a game
  10. element-UI-tab选项卡