<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Decode360's Blog

    業(yè)精于勤而荒于嬉 QQ:150355677 MSN:decode360@hotmail.com

      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 ::  :: 管理 ::
      397 隨筆 :: 33 文章 :: 29 評(píng)論 :: 0 Trackbacks
    Undo TableSpace ①.管理方法
    ?
    ??? 撤銷表空間對(duì)于目前的Oracle來說是非常重要的表空間類型。Undo TableSpace的大小,還決定了閃回的時(shí)間長(zhǎng)度,而且對(duì)于其他的版本一致性都有很大的作用。不過目前基本上撤銷表空間都是選擇自動(dòng)管理的,所以還是比較方便的,像我這樣的菜鳥,就了解一下基礎(chǔ)知識(shí),然后當(dāng)它是黑盒吧。
    ?
    一、What is Undo
    ?
    ??? ① 當(dāng)發(fā)布一條回滾語句時(shí),撤銷記錄用于撤銷未提交事務(wù)讀數(shù)據(jù)庫所做的修改。
    ??? ② 在數(shù)據(jù)庫恢復(fù)期間,撤銷記錄用于撤銷從重做日志作用到數(shù)據(jù)文件的任何未提交的修改。
    ??? ③ 當(dāng)另一用戶正在修改數(shù)據(jù)時(shí),撤銷記錄為正在訪問數(shù)據(jù)的用戶提供修改錢的映像。
    ?
    ??? 注:一個(gè)數(shù)據(jù)庫只有一個(gè)SYSTEM回滾段,通常在CREATE DATABASE時(shí)自動(dòng)創(chuàng)建,并在實(shí)例啟動(dòng)時(shí)聯(lián)機(jī)。
    ?
    ?
    二、指定管理Undo TableSpace的方式
    ?
    ??? 管理Undo TableSpace的方法有兩種:一是使用回滾段來管理,該方式被認(rèn)為是手動(dòng)撤銷管理;二是使用撤銷表空間的方法,是以自動(dòng)撤銷管理方式。不能在一個(gè)數(shù)據(jù)庫實(shí)例中同時(shí)使用兩種方法,如要進(jìn)行切換,則需要關(guān)閉和重啟數(shù)據(jù)庫。實(shí)例中使用何種管理方法,由初始化參數(shù)UND_MANAGEMENT決定。
    ?
    ??? 1、自動(dòng)撤銷管理方式
    ?
    ??? UNDO_MANAGEMENT = AUTO
    ??? 注:前提是一個(gè)撤銷表空間必須是可用的。
    ?
    ??? ① 實(shí)例啟動(dòng)時(shí),Oracle自動(dòng)選擇第一個(gè)可用的撤銷表空間。
    ??? ② 如果沒有撤銷表空間,則啟動(dòng)時(shí)使用SYSTEM回滾段,但會(huì)有警告信息產(chǎn)生。
    ??? ③ 可以啟動(dòng)時(shí)指定特定的撤銷表空間,通過 UBDO_TABLESPACE 初始化參數(shù)約定。
    ?
    ??? 其他相關(guān)初始化參數(shù):
    ?
    ??? UNDO_RETENTION:保持撤銷的時(shí)間長(zhǎng)度動(dòng)態(tài)參數(shù),默認(rèn)為900秒
    ??? UNDO_SUPPRESS_ERRORS:自動(dòng)撤銷管理方法下,發(fā)布手動(dòng)撤銷管理SQL語句時(shí),是否發(fā)布錯(cuò)誤信息。TRUE取出信息|FALSE發(fā)布信息
    ?
    ??? 2、手動(dòng)撤銷管理方式
    ?
    ??? UNDO_MANAGEMENT = MANUAL (default)
    ??? 注:此模式下UNDO_TABLESPACE參數(shù)值被忽略。
    ?
    ??? 其他相關(guān)的初始化參數(shù):
    ?
    ??? ROLLBACK_SEGMENTS:指定在啟動(dòng)時(shí)需要的回滾段
    ??? TRANSACTIONS:指定并發(fā)事務(wù)的最大個(gè)數(shù)
    ??? TRANSACTIONS_PER_ROLLBACK_SEGMENT:指定每個(gè)回滾段希望被處理的并發(fā)事務(wù)個(gè)數(shù)
    ??? MAX_ROLLBACK_SEGMENTS:指定可以為任何實(shí)例聯(lián)機(jī)服務(wù)的回滾段最大個(gè)數(shù)
    ?
    ?
    -----------------------------------------------------------------------------------
    ?
    管理撤銷表空間
    ?
    ??? Oracle強(qiáng)烈建議以自動(dòng)撤銷管理方式進(jìn)行操作。
    ?
    1、創(chuàng)建撤銷表空間
    ?
    ??? ① CREATE DATABASE 的 UNDO TABLESPACE 子句
    ?
    ??? 若在CREATE DATABASE中沒有UNDO TABLESPACE子句,則Oracle會(huì)自動(dòng)創(chuàng)建一個(gè)名為SYS_UNDOTBS(9i)的默認(rèn)撤銷表空間,以自動(dòng)撤銷管理方式進(jìn)行。SYS_UNDOTBS初始大小為10M,自動(dòng)盤區(qū)。
    ?
    ??? 創(chuàng)建語法:
    ?
    ??? CREATE DATABASE rbdb1
    ??? CONTROLFILE REUSE
    ??? ...
    ??? UNDO TABLESPACE undotbs_01 DATAFILE '/u01/oracle/rbdb1/undo0101.dbf';
    ?
    ??? 注:使用該子句后,若Undo TableSpace沒有創(chuàng)建成功,則整個(gè)數(shù)據(jù)庫新建操作失敗。
    ?
    ??? ② 使用 CREATE UNDO TABLESPACE 語句
    ?
    ??? CREATE UNDO TABLESPACE undotbs_02
    ??? DATAFILE '/u02/oracle/rbdb1/undo0201.dbf' SIZE 2M REUSE AUTOEXTEND ON;
    ?
    ??? 注:與CREATE TABLESPACE語句基本一樣。
    ?
    2、修改撤銷表空間
    ?
    ??? 撤銷表空間也可以通過ALTER TABLESPACE語句來進(jìn)行修改,但是由于撤銷表空間中大多數(shù)的方面都由系統(tǒng)自動(dòng)管理,所以用戶只需要進(jìn)行以下的操作(也只允許用戶進(jìn)行這些屬性的修改):
    ?
    ??? ① 添加數(shù)據(jù)文件
    ??? ② 數(shù)據(jù)文件重命名
    ??? ③ 數(shù)據(jù)文件聯(lián)機(jī)/脫機(jī)
    ??? ④ 開始/結(jié)束數(shù)據(jù)文件的公開備份
    ?
    ??? 注:具體操作與普通數(shù)據(jù)文件操作相同,不再舉例。
    ?
    3、取消撤銷表空間
    ?
    ??? 一個(gè)撤銷表空間只有在沒有被任何實(shí)例所使用的情況下才可以被取消。如果包含任何未完成的事務(wù),則操作失敗。
    ?
    ??? DROP TABLESPACE undotbs_01;
    ?
    ??? 注:取消Undo TableSpace時(shí)相當(dāng)于 DROP TABLESPACE ... INCLUDING CONTENTS
    ?
    4、切換撤銷表空間
    ?
    ??? ALTER SYSTEM SET UNDO_TABESPACE = undotbs_02;
    ?
    ??? 命令執(zhí)行后,會(huì)立即切換,但是需要注意以下幾點(diǎn):
    ??? ① 該表空間必須存在
    ??? ② 該表空間必須是一個(gè)撤銷表空間
    ??? ③ 該表空間不能被其他實(shí)例使用
    ?
    ??? 因?yàn)榍袚Q操作不等待已有事務(wù)的提交,所以當(dāng)切換操作完成之后,原先的Undo TableSpace進(jìn)入PENDING OFFLINE狀態(tài),已經(jīng)開始的事務(wù)可以繼續(xù)進(jìn)行操作,新事務(wù)則使用新的Undo TableSpace。
    ?
    ??? 另外,可以使用 ALTER SYSTEM SET UNDO_TABLESPACE = '';? 來去掉Undo TableSpace。
    ?
    5、為撤銷空間確定用戶限額
    ?
    ??? Oracle的Database Resource Manager的UNDO_POOL指令允許DBA限制一個(gè)用戶組所消耗的撤銷空間的數(shù)量。 可以為每個(gè)使用者組指定一個(gè)撤銷池,一個(gè)撤銷池控制由一個(gè)使用者產(chǎn)生的全部撤銷數(shù)量。
    ?
    ??? 當(dāng)沒有明確定義UNDO_POOL指令時(shí),用戶被允許使用沒有限制的撤銷表空間。
    ?
    6、為撤銷信息設(shè)置保留期
    ?
    ??? ① 指定保留期
    ?
    ??? UNDO_RETENTION = 500 (default 900)
    ??? 初始化參數(shù) UNDO_RETENTION 可設(shè)置數(shù)據(jù)保留期。 UNDO_RETENTION參數(shù)是可以通過ALTER SYSTEM 來動(dòng)態(tài)修改的。
    ?
    ??? 該保留期的計(jì)算不受系統(tǒng)崩潰的影響,即實(shí)例崩潰前生成的撤銷,一直保持到它的保留期過期,即使重新啟動(dòng)實(shí)例也是如此。
    ?
    ?? 注:UNDO_RETENTION只有在Undo TableSpace有足夠空間時(shí)才起作用。當(dāng)空間不足時(shí),系統(tǒng)開始重用未到期的撤銷空間。
    ?
    ??? ② 閃回查詢的保留期
    ?
    ??? DBMS_FLASHBACK可以實(shí)現(xiàn)系統(tǒng)的閃回操作,即用戶可以見到過去一個(gè)指定時(shí)間的一致版本。
    ?
    ??? 閃回可以回退的時(shí)間最大長(zhǎng)度,取決于撤銷的保存時(shí)間長(zhǎng)度,所以一般如果需要閃回在12小時(shí)的,則需要設(shè)置:
    ??? UNDO_RETENTION = 43200
    ?
    ?? ③ 撤銷保留的空間要求
    ?
    ??? 通過一下公式計(jì)算撤銷保留所需要的空間:
    ??? UndoSpace = UR * UPS + Overhead
    ?
    ??? UndoSpace = 撤銷塊數(shù)目
    ??? UR = 以秒計(jì)的 UNDO_RETENTION
    ??? UPS = 每秒的撤銷塊數(shù)
    ??? Overhead = 元數(shù)據(jù)的小開銷 (事務(wù)表、位圖等)
    ?
    7、關(guān)于撤銷空間的信息
    ?
    ??? V$UNDOSTAT:包括用來監(jiān)聽和調(diào)整撤銷空間的統(tǒng)計(jì)信息
    ??? V$ROLLSTAT:自動(dòng)撤銷管理方式中撤銷表空間中撤銷段的行為
    ??? V$TANSACTION:撤銷段的信息
    ??? DBA_UNDO_EXTENTS:撤銷表空間中每個(gè)盤區(qū)的提交時(shí)間
    ?
    ??? 監(jiān)控撤銷空間:
    ??? SELECT BEGIN_TIME, END_TIME, UNDOTSN, UNDOBLKS, TXNCOUNT, MAXCONCURRENCY "MAXCON"
    ??? FROM V$UNDOSTAT; -- 監(jiān)控某段時(shí)間內(nèi)撤銷空間的消耗情況
    ?
    posted on 2009-02-06 21:10 decode360 閱讀(347) 評(píng)論(0)  編輯  收藏 所屬分類: 08.DBA
    主站蜘蛛池模板: 成年女人永久免费观看片| 男人都懂www深夜免费网站| 国产精品国产亚洲区艳妇糸列短篇| 亚洲av无码片在线观看| 亚洲一欧洲中文字幕在线| 亚洲一区二区三区免费在线观看| 亚洲校园春色小说| 精品亚洲AV无码一区二区 | 亚洲精品动漫免费二区| 欧美a级成人网站免费| 最近免费中文字幕4| 日韩免费视频在线观看| 免费a级毛片无码av| 久久国产成人精品国产成人亚洲 | 日韩一区二区a片免费观看| 性感美女视频免费网站午夜 | 久久久精品免费国产四虎| 四虎国产成人永久精品免费| 亚洲电影在线免费观看| 在线观看av永久免费| 免费无码又爽又高潮视频| 免费a在线观看播放| 亚洲熟妇av一区二区三区漫画| 久久久久亚洲av无码尤物| 亚洲午夜电影在线观看高清| 亚洲中文字幕AV每天更新| 色吊丝性永久免费看码| 国产在线观看免费av站| 亚洲毛片免费视频| 国产国产人免费人成免费视频| 自拍偷自拍亚洲精品第1页| 亚洲av激情无码专区在线播放| 亚洲一区二区三区播放在线 | 亚洲日韩中文字幕| 亚洲AV无码AV日韩AV网站| 97超高清在线观看免费视频| 五月婷婷在线免费观看| 国产一区二区三区在线观看免费| 亚洲日本乱码在线观看| 亚洲伦理一二三四| 2022国内精品免费福利视频|