自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Oracle 10g數(shù)據(jù)庫中UNDO_RETENTION參數(shù)的使用詳解

數(shù)據(jù)庫 Oracle
本文我們主要介紹了Oracle 10g數(shù)據(jù)庫中UNDO_RETENTION參數(shù)的詳細(xì)設(shè)置方法,希望能夠?qū)δ兴鶐椭?/div>

Oracle 10g數(shù)據(jù)庫中UNDO_RETENTION參數(shù)的使用的相關(guān)知識是本文我們主要要介紹的內(nèi)容,接下來我們就開始介紹。我們知道,每一種數(shù)據(jù)庫都需要有一種管理回滾或者撤銷數(shù)據(jù)的方法。當(dāng)一個(gè)DML發(fā)生以后,在用戶還沒有提交(COMMIT)改變,用戶不希望這種改變繼續(xù)保持,需要撤銷所做的修改,將數(shù)據(jù)回退到?jīng)]有發(fā)生改變以前,這時(shí)就需要使用一種被稱為撤銷記錄的數(shù)據(jù)。

使用撤銷記錄,我們可以:

1、當(dāng)使用ROLLBACK語句時(shí)回滾事務(wù),撤銷DML操作改變的數(shù)據(jù)。

2、恢復(fù)數(shù)據(jù)庫。

3、提供讀取的一致性。

4、使用Oracle Flashback Query分析基于先前時(shí)間點(diǎn)的數(shù)據(jù)。

5、使用Oracle Flashback特性從邏輯故障中恢復(fù)數(shù)據(jù)庫。

Oracle10g中的自動(dòng)撤銷管理(AUM)

在Oracle10g中對于回滾段的管理可以通過配置參數(shù)而實(shí)現(xiàn)自動(dòng)管理。為啟用撤銷空間的自動(dòng)管理,首先必須在init.ora中或者SPFILE文件中指定自動(dòng)撤銷模式。其次需要?jiǎng)?chuàng)建一個(gè)專用的表空間來存放撤銷信息,這保證用戶不會(huì)在SYSTEM表空間中保存撤銷信息。此外還需要為撤銷選擇一個(gè)保留時(shí)間。

如果需要實(shí)現(xiàn)AUM,需要配置以下3個(gè)參數(shù):

UNDO_MAMAGEMENT

UNDO_TABLESPACE

UNDO_RETENTION

查看初始化參數(shù)的設(shè)置:

SQL> show parameter undo_tablespace;

NAME                               TYPE      VALUE

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

undo_tablespace                    string    UNDOTBS1

SQL> show parameter undo_management;

NAME                               TYPE      VALUE

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

undo_management                    string    AUTO

SQL> show parameter undo_retention;

NAME                               TYPE      VALUE

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

undo_retention                     integer   900

SQL>

初始化參數(shù)的描述:

Initialization Parameter

Description

UNDO_MANAGEMENT

If AUTO, use automatic undo management. The default is MANUAL

UNDO_TABLESPACE

An optional dynamic parameter specifying the name of an undo tablespace. This parameter should be used only when the database has multiple undo tablespaces and you want to direct the database instance to use a particular undo tablespace.

UNDO_RETENTION

The UNDO_RETENTION parameter is ignored for a fixed size undo tablespace. The database may overwrite unexpired undo information when tablespace space becomes low.

For an undo tablespace with the AUTOEXTEND option enabled, the database attempts to honor the minimum retention period specified by UNDO_RETENTION. When space is low, instead of overwriting unexpired undo information, the tablespace auto-extends. If the MAXSIZE clause is specified for an auto-extending undo tablespace, when the maximum size is reached, the database may begin to overwrite unexpired undo information.

如果將初始化參數(shù)UNDO_MANAGEMENT設(shè)置為AUTO,則Oracle10g將啟用AUM。

可以在初始化參數(shù)UNDO_RETENTION中設(shè)置撤銷保留時(shí)間的大?。?/p>

UNDO_RETENTION=1800       設(shè)置保留時(shí)間為30分鐘(1800秒)。

UNDO_RETENTION參數(shù)默認(rèn)設(shè)置為900秒。

UNDO_RETENTION的值應(yīng)該設(shè)置為多少才合理?

不存在理想的UNDO_RETENTION的時(shí)間間隔。保留時(shí)間間隔依賴于估計(jì)最長的事務(wù)可能運(yùn)行的時(shí)間長度。根據(jù)數(shù)據(jù)庫中最長事務(wù)長度的信息,可以給UNDO_RETENTION分配一個(gè)大致的時(shí)間。

可以通過v$undostat視圖的maxquerylen列查詢在過去的一段時(shí)間內(nèi),最長的查詢執(zhí)行的時(shí)間(以秒為單位)。UNDO_RETENTION參數(shù)中的時(shí)間設(shè)置應(yīng)該至少與maxquerylen列中給出的時(shí)間一樣長。

Oracle提供如下為新數(shù)據(jù)庫設(shè)置撤銷保留時(shí)間間隔的指導(dǎo):

1、OLTP系統(tǒng):15分鐘

2、混合: 1小時(shí)

3、DSS系統(tǒng):3小時(shí)

4、閃回查詢:24小時(shí)

UNDO_RETENTION參數(shù)的較高值并不保證撤銷數(shù)據(jù)保留UNDO_RETENTION參數(shù)指定的時(shí)間。為保證撤銷保留指定的時(shí)間,必須使用RETENTION GRARANTEE子句。

例如:

 

  1. CREATE UNDO TABLESPACE UNDOTBS01  
  2. DATAFILE  
  3. ‘E:/oracle/product/10.2.0/oradata/keymen/UNDOTBS01.DBF’  
  4. SIZE 500M AUTOEXTEND ON  
  5. RETENTION GUARANTEE 

 

也可以使用ALTER DATABASE命令保證數(shù)據(jù)庫中的撤銷保留。

ALTER DATABASE UNDOTBS01 RETENTION GUARANTEE。

關(guān)閉撤銷信息的保證保留。

ALTER DATABASE UNDOTBS01 RETENTION NOGUARANTEE。

設(shè)置撤銷表空間的尺寸

Oracle建議使用Undo Advisor的幫助下設(shè)置撤銷表空間的尺寸??梢詣?chuàng)建一個(gè)小尺寸(大約500M)的撤銷表空間,AUTOEXTEND數(shù)據(jù)文件屬性設(shè)置為ON,從而允許表空間自動(dòng)擴(kuò)展。此表空間將自動(dòng)增長以支持?jǐn)?shù)據(jù)庫中活動(dòng)事務(wù)數(shù)目的增長以及事務(wù)長度的增長。

在數(shù)據(jù)庫運(yùn)行適當(dāng)?shù)囊欢螘r(shí)間后,可以使用UNDO Advisor來得出關(guān)于設(shè)置撤銷表空間尺寸的建議。應(yīng)該使用Analysis Time Period字段中允許的***時(shí)間。出于此目的,可以使用OEM UNDO Management頁面中給出的Longest——Runing Query長度。還必須根據(jù)閃回需求指定New UNDO Retention字段的值。例如:如果希望表能閃回24小時(shí),應(yīng)該使用24小時(shí)作為這個(gè)字段的值。

假如數(shù)據(jù)庫中用RETENTION GUARANTEE子句配置了保證保留撤銷。如果撤銷表空間太小不能滿足使用它的所有活動(dòng)事務(wù),那么會(huì)發(fā)生以下情況:

1、如果撤銷表空間用完85%,Oracle將發(fā)布一個(gè)自動(dòng)表空間警告。

2、當(dāng)撤銷表空間用完97%時(shí),Oracle將發(fā)布一個(gè)自動(dòng)表空間嚴(yán)重警告。

3、所有DML語句將不允許,并且會(huì)接收到一個(gè)空間超出錯(cuò)誤。

4、DDL語句允許繼續(xù)執(zhí)行。

以上就是Oracle 10g中UNDO_RETENTION參數(shù)的使用的全部內(nèi)容,本文我們就介紹到這里了,希望本次的介紹能夠?qū)δ兴斋@。

【編輯推薦】

  1. Oracle數(shù)據(jù)庫學(xué)習(xí)筆記之表的聯(lián)合查詢
  2. Oracle數(shù)據(jù)庫RMAN不完全恢復(fù)之基于SCN恢復(fù)
  3. Oracle數(shù)據(jù)庫RMAN不完全恢復(fù)之基于時(shí)間恢復(fù)
  4. Oracle C#實(shí)現(xiàn)Oracle Text全文檢索的簡單例子
  5. Oracle數(shù)據(jù)庫RMAN不完全恢復(fù)之基于日志序列號恢復(fù)
責(zé)任編輯:趙鵬 來源: CSDN博客
相關(guān)推薦

2011-08-24 14:42:14

Oracle 10gUNDO數(shù)據(jù)的作用UNDO表空間

2011-08-09 13:14:37

Oracle 10g數(shù)據(jù)庫閃回

2009-11-19 15:57:34

Oracle 10g數(shù)

2010-09-17 09:39:31

Oracle 10g

2010-02-03 16:16:49

Linux Oracl

2011-08-09 18:15:24

Oracle 10g查找數(shù)據(jù)

2011-08-23 18:04:16

Oracle 10g數(shù)據(jù)泵

2011-03-29 09:56:48

Oracle數(shù)據(jù)庫10SQL

2011-03-29 10:09:41

Oracle 10g虛擬數(shù)據(jù)庫

2011-08-17 16:52:11

Oracle 10gLogmnr

2010-04-16 15:57:54

Oracle 10g

2010-04-29 15:50:35

2011-03-25 16:10:58

oraclenagios

2011-08-17 14:19:43

Oracle 10gShrink Tablshrink spac

2010-05-05 15:52:36

Oracle 10G

2010-04-12 13:34:42

Oracle 10g

2011-04-15 09:53:37

Oracle 10gSQL優(yōu)化

2009-01-20 23:13:24

Oracle 10G數(shù)據(jù)庫

2010-04-07 09:39:18

Oracle 10G

2011-08-29 13:40:12

Oracle 10g創(chuàng)建表空間
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號