1. 程式人生 > >Oracle logging 和nologging 的區別

Oracle logging 和nologging 的區別

[@[email protected]]

redo log 記錄發生在oracle資料庫中的一舉一動,當你往表裡插入資料時候,如果表上存在索引,oracle會自動幫你維護這些索引。但是這個看似簡單的維護索引的工作背後有許多動作要做的,redo 就會生成這些全過程。

對於 nologging 引數:也只是在特定的條件下才會大大減少redo 生成的數量.
例如:


以下摘自


index creations and ALTERs (rebuilds). 

Bulk INSERTs using a 'direct path insert' via the /*+ APPEND */ hint. 

LOB operations (updates to large objects do not have to be logged). 

Table creations via the CREATE TABLE AS SELECT. 

Various ALTER TABLE operations such as MOVE and SPLIT.

---------------------------------------------------------------------------------------------------

恢復的時候是 直接針對 檔案的操作,不會象資料庫正在執行時候的 解析、產生redo、undo …… 沒有這些過程

日誌檔案中記錄了 對檔案變化的操作! 而索引的建立包含了一系列對檔案的修改。
nologging 只針對 create table ... as 和 direct insert 生效

[@[email protected]]

redo log 記錄發生在oracle資料庫中的一舉一動,當你往表裡插入資料時候,如果表上存在索引,oracle會自動幫你維護這些索引。但是這個看似簡單的維護索引的工作背後有許多動作要做的,redo 就會生成這些全過程。

對於 nologging 引數:也只是在特定的條件下才會大大減少redo 生成的數量.
例如:


以下摘自


index creations and ALTERs (rebuilds). 

Bulk INSERTs using a 'direct path insert' via the /*+ APPEND */ hint. 

LOB operations (updates to large objects do not have to be logged). 

Table creations via the CREATE TABLE AS SELECT. 

Various ALTER TABLE operations such as MOVE and SPLIT.

---------------------------------------------------------------------------------------------------

恢復的時候是 直接針對 檔案的操作,不會象資料庫正在執行時候的 解析、產生redo、undo …… 沒有這些過程

日誌檔案中記錄了 對檔案變化的操作! 而索引的建立包含了一系列對檔案的修改。

nologging 只針對 create table ... as 和 direct insert 生效

原文出處:http://blog.itpub.net/35489/viewspace-1006621/

相關推薦

Oracle logging nologging區別

[@[email protected]] redo log 記錄發生在oracle資料庫中的一舉一動,當你往表裡插入資料時候,如果表上存在索引,oracle會自動幫你維護這些索引。但是這個看似簡單的維護索引的工作背後有許多動作要做的,redo 就會生成這些全過程

oracle thinoci 區別

根據oracle的說法,java程式連線oracle資料庫時,用oci驅動要比用thin驅動效能好些。主要的區別是使用thin驅動時,不需要安裝oracle的客戶端,而使用oci時則要安裝oracle的客戶端。   從使用thin驅動切換到oci驅動在配置來說很簡單,只需把連線字串java:oracle:th

Oracle date timestamp 區別 原文出處: http://www.cnblogs.com/java-class/

1.DATE資料型別      這個資料型別我們實在是太熟悉了,當我們需要表示日期和時間的話都會想到date型別。它可以儲存月,年,日,世紀,時,分和秒。它典型地用來表示什麼時候事情已經發生或將要發生。     DATE資料型別的問題在於它表示兩個事件發生時間間隔的度量粒度是秒。這個問題將在稍後討論

Oracle DELETETRUNCATE 的區別

提交 acl trigge llb 刪除 dex 語句 val let 語法delete from aa truncate table aa 區別 1.delete from後面可以寫條件,truncate不可以。 2.delete from記錄是一條條刪的,所刪除的每行

oracle databaseclient版本的區別

database 是資料庫,你安裝到本機上,可以在本機上建立資料庫。client是客戶端,你只能通過client連線上別人機器上的資料庫。database 包含client的功能 客戶端是不需要安裝資料庫例項的;只有服務端才需要安裝。客戶端和服務端都可以使用slqplu

ORACLE資料庫NLS_CHARACTERSETNLS_NCHAR_CHARACTERSET區別

使用Select * from nls_database_parameter去檢視的字符集,發現查到兩個字符集,NLS_CHARACTERSET 和NLS_NCHAR_CHARACTERSET。如下: SQL> select * from nls_database_p

oracle inexist的區別 not in not exist的區別

in 是把外表和內表作hash join,而exists是對外表作loop,每次loop再對內表進行查詢。一般大家都認為exists比in語句的效率要高,這種說法其實是不準確的,這個是要區分環境的。 exists對外表用loop逐條查詢,每次查詢都會檢視exists的條件語句,當 e

Oracle spfilepfile的區別,生成,載入修復

oracle資料庫的配置檔案指的是系統在啟動到“nomount”階段需要載入的檔案,也叫做pfile或者spfile,但是其實pfile和spfile是不同的檔案。 不同的資料庫配置檔案是不同的,但是格式大體是近似的,預設地址是oracle安裝目錄下database 資料夾,例如:“c:

Oracle 函式儲存過程的區別聯絡 總結版

  oracle儲存過程與函式的區別 2017年08月15日 22:49:38 冷月葬花魂iiii 閱讀數:7800更多 個人分類: oracle 定義: 儲存過程(Stored Procedure )是一組為了完成特定功能的SQL 語句集

OracleSQLServer的增刪改查某些區別

一下午花在檢視約束名和刪除約束名,反反覆覆的執行,就為看看其中的區別,(借鑑CSDN使用者jkqiang885和a154832918,還借鑑了百度知道) 現在做個筆記,順便寫入建立約束,方便檢視!!! create table class--下面要引用外來鍵聯絡classno來知道cla

Oracle-09-刪除表(droptruncate區別、閃回刪除等)

一、如果既要刪除表中的資料也要刪除表的結構,請使用droptable語句,其格式如下: drop table 表名 drop table語句(是DDL語句)有如下特徵: (1)它刪除表中所有的資料

oracle 雙機熱備,oracle dataguard oracle rac的區別聯絡

Data Guard 是Oracle的遠端複製技術,它有物理和邏輯之分,但是總的來說,它需要在異地有一套獨立的系統,這是兩套硬體配置可以不同的系統,但是這兩套系統的軟體結構保持一致,包括軟體的版本,目錄儲存結構,以及資料的同步(其實也不是實時同步的),這兩套系統之間只要網路是通的就可以了,是一種異地容災的解

關係型資料庫非關係型資料庫區別oracle與mysql的區別

一、關係型資料庫     關係型資料庫,是指採用了關係模型來組織資料的資料庫。     關係模型是在1970年由IBM的研究員E.F.Codd博士首先提出的,在之後的幾十年中,關係模型的概念得到了充分的發展並逐漸成為主流資料庫結構的主流模型。     簡單來說,關係模型指的

Oracle syssystem使用者、sysdba sysoper系統許可權、sysdbadba角色的區別 .

sys和system使用者區別 1)最重要的區別,儲存的資料的重要性不同 sys所有oracle的資料字典的基表和檢視都存放在sys使用者中,這些基表和檢視對於oracle的執行是至關重要的,由資料庫自己維護,任何使用者都不能手動更改。sys使用者擁有dba,sysdba,sysoper等角色或許可權,是o

sql(join中on與where區別) / NVL函式 / oracle儲存過程中isas區別 / JAVA呼叫資料庫儲存過程

left join :左連線,返回左表中所有的記錄以及右表中連線欄位相等的記錄。 right join :右連線,返回右表中所有的記錄以及左表中連線欄位相等的記錄。 inner join: 內連線,又叫等值連線,只返回兩個表中連線欄位相等的行。 full join:外連線,返回兩個表中的行:left jo

關於Oracle中執行儲存過程使用callexec區別說明

在sqlplus中這兩種方法都可以使用:  exec pro_name(引數1..);  call pro_name(引數1..);  區別:  1. 但是exec是sqlplus命令,只能在sqlplus中使用;call為SQL命令,沒有限制.  2. 儲存過程沒有

Oracle inner joinwhere區別

1 .WHERE子句中使用的連線語句,在資料庫語言中,被稱為隱性連線。INNER JOIN……ON子句產生的連線稱為顯性連線。(其他JOIN引數也是顯性連線)WHERE 和INNER JOIN產生的連線關係,沒有本質區別,結果也一樣。但是!隱性連線隨著資料庫語言的規範和發展,已經逐漸被淘汰,比較新的資料庫語言

ORACLE資料庫NLS_CHARACTERSETNLS_NCHAR_CHARACTERSET區別?

使用Select * from nls_database_parameter去檢視資料庫的字符集,發現查到兩個字符集,NLS_CHARACTERSET 和NLS_NCHAR_CHARACTERSET。如下: SQL> select * from nls_databas

Oracle UserSchema的區別

Oracle使用者是Oracle資料庫中的重要概念,下面就為您介紹Oracle使用者和模式的區別,希望對您學習Oracle使用者方面能夠有所幫助。 (一)什麼Oracle叫使用者(user): A user is a name defined in the database that can conn

Oracle中執行儲存過程callexec區別

在sqlplus中這兩種方法都可以使用:  exec pro_name(引數1..); call pro_name(引數1..);  區別:  1. 但是exec是sqlplus命令,只能在sqlpl