1z0-052學(xué)習(xí)筆記(5)
第12章 UNDO管理
1.UNDO數(shù)據(jù)和UNDO Segment
事務(wù)的回滾
讀取一致性
實(shí)例的recovery
falshback
2.UNDO數(shù)據(jù)和事務(wù)
1個(gè)UNDO Segment可以處理多個(gè)事務(wù),INSERT的時(shí)候,保存ROWID
3.UNDO管理構(gòu)成
自動(dòng)UNDO管理的概念
CREATE UNDO TABLESPACE 表領(lǐng)域
DATAFILE '數(shù)據(jù)文件名' SIZE 大小
[AUTOEXTEND ON [NEXT 增加的大小]]
[MAXSIZE UNLIMITED | 最大大小]
UNDO表領(lǐng)域,下面的特征
LOCAL管理表領(lǐng)域
自動(dòng)extend管理
UNDO segment 專用
4.自動(dòng)UNDO管理的設(shè)定
自動(dòng)UNDO管理相關(guān)的初期化參數(shù)
UNDO_MANAGEMENT: 自動(dòng)UNDO管理的時(shí)候設(shè)為[AUTO],默認(rèn)為[MANUAL],手動(dòng)UNDO管理
UNDO_TABLSPACE: 現(xiàn)在的ORACLE實(shí)例的活動(dòng)UNDO表領(lǐng)域
5.UNDO保存:UNDO數(shù)據(jù)用于事務(wù)的回滾,也可以用FLASHBACK
UNDO_RETENTION: 默認(rèn)900秒
6.UNDO保存的保證
ALTERTABLESPACE 表領(lǐng)域名 RETENTION GUARNTEE;
DBA_TABLESPACES視圖可以確認(rèn)RETENTION列;
如果對(duì)于非UNOD表領(lǐng)域?qū)嵭蠷ETENTION GUARNTEE,則會(huì)出現(xiàn)錯(cuò)誤。
7.UNDO數(shù)據(jù)關(guān)聯(lián)的錯(cuò)誤
[ORA-01555:snapshot太舊]回避的方法
UNDO保存期間的調(diào)整
UNDO表領(lǐng)域大小的調(diào)整
UNDO保存的保證使用UNDO保存期間被復(fù)寫的完全防止可能
8.UNDO ADVISE
UNDO ADVISE使用確認(rèn)內(nèi)容
UNDO數(shù)據(jù)保存必須的表領(lǐng)域大小
擴(kuò)張可能的UNDO表領(lǐng)域的最大大小
現(xiàn)在的UNDO表領(lǐng)域可能保存的期間
第13章 備份以及復(fù)原的基本知識(shí)
1.數(shù)據(jù)庫關(guān)聯(lián)的障害
文障害:數(shù)據(jù)庫操作時(shí)的SQL語句失敗
用戶進(jìn)程障害:應(yīng)用程序異常結(jié)束,用戶session強(qiáng)制終了
網(wǎng)絡(luò)障害:不能連接listener,不能進(jìn)行網(wǎng)絡(luò)接線
用戶錯(cuò)誤:數(shù)據(jù)庫操作正常,但是系統(tǒng)操作不正常(表的刪除/錯(cuò)誤的數(shù)據(jù)操作)
實(shí)例障害:內(nèi)存障害,OS障害,Oracle實(shí)例被強(qiáng)制停止
媒體障害:Oracle數(shù)據(jù)庫文件的一部分損失(文件刪除硬盤破損等)
2.文障害的解決
無效的數(shù)據(jù)入力(ORA-01722:數(shù)值無效) 檢查SQL語句,確認(rèn) 數(shù)據(jù)
權(quán)限不足(ORA-01031:權(quán)限不足):應(yīng)該賦予適當(dāng)?shù)南到y(tǒng)權(quán)限或者對(duì)象權(quán)限
領(lǐng)域不足:賦予用戶足夠的表領(lǐng)域
ORA-01653:表SCOTT.TEST不能進(jìn)行擴(kuò)張
ORA-01658:表領(lǐng)域TS01的segment不能作成INITAL的extend
4)應(yīng)用的邏輯錯(cuò)誤(計(jì)算結(jié)果):確認(rèn)程序邏輯正確
3.用戶進(jìn)程障害解決:PMON對(duì)應(yīng)
4.網(wǎng)絡(luò)障害
listener接線錯(cuò)誤(ORA-12541:沒有l(wèi)istener) : 構(gòu)建多個(gè)listener,客戶端的配置failover=true
網(wǎng)絡(luò)接口錯(cuò)誤(ORA-12154:指定的接線識(shí)別子不能解決):復(fù)數(shù)接線子配置,并確認(rèn)硬件
5.用戶錯(cuò)誤
誤刪表(DROP TABLE):從垃圾箱還原(flashback drop)
誤刪表(truncate table):flashbak database,執(zhí)行表領(lǐng)域的point-in-point的恢復(fù)
誤提交(COMMIT)UPDATE,DELETE操作: 如果UNDO表中殘留有數(shù)據(jù)的話,flashback table;如果UNDO表中不存在數(shù)據(jù)的話,
使用Logminer,查找REDOLOG實(shí)體
事前行移動(dòng)有效化必要。
6.實(shí)例障害:SMON,自己恢復(fù)
7.媒體錯(cuò)誤解決:基本就是從BACKUP文件恢復(fù),然后用REDO日志進(jìn)行recover處理
平均障害間隔(MTBF:Mean TIme Between Failuer)
平均修復(fù)時(shí)間(MTTR:Mean Time To Repair)
8.實(shí)例恢復(fù)構(gòu)成
CheckPoint
SCN(System Change Number):事務(wù)提交時(shí)的編號(hào)。Oracle用SCN來區(qū)分事務(wù)。
DBWn向數(shù)據(jù)文件寫變更的數(shù)據(jù)塊
CKPT向控制文件更新新的CheckPoint編號(hào)
CKPT向數(shù)據(jù)文件更新新的CheckPoint編號(hào)
CheckPoint的發(fā)生時(shí)機(jī):
Log Switch
管理員的指定(ALTER SYSTEM CHECKPOINT)
表領(lǐng)域Offline
數(shù)據(jù)庫停止
9.實(shí)例回復(fù):當(dāng)實(shí)例重啟后,SMON會(huì)比較控制文件和數(shù)據(jù)文件的SCN,來判斷從什么地方開始實(shí)例回復(fù)
實(shí)例回復(fù):只能回復(fù)到最后一次事務(wù)提交的狀態(tài)(最后的SCN號(hào))
實(shí)例回復(fù):使用REDO日志文件,進(jìn)行Roll Foward,然后Roll Back
初始化參數(shù):FAST_START_MTTR_TARGET,Oracle服務(wù)器調(diào)整CheckPoint的頻度,這個(gè)時(shí)間越短,實(shí)例回復(fù)的
時(shí)間越短,但是平凡的寫數(shù)據(jù)文件會(huì)導(dǎo)致數(shù)據(jù)庫文件效率低下,所以應(yīng)該調(diào)整為合適的值。
10.要使實(shí)例回復(fù)時(shí)間越短:
FAST_START_MTTR_TARGET:值越小
REDO日志文件:文件大小越小
11.ARCHIVELOG初始化參數(shù)
LOG_ARCHIVE_DEST_1~LOG_ARCHIVE_DEST_10:Achive LOG日志文件保存的位置,最多10個(gè),可以為本地磁盤或者是網(wǎng)絡(luò)服務(wù)名
LOG_ARCHIVE_FORMAT:Archive LOG日志文件名的格式
ARCHIVELOG模式切換,ALTER DATABASE ARCHIVELOG,在MOUNT的時(shí)候進(jìn)行
12. LOGGING和NOLOGGING
NOLOGGING,不生成REDO日志實(shí)體
表領(lǐng)域,Segment級(jí)別指定
下面的命令可以指定為NOLOGGING
CREATE TABLE ... AS SELECT
CREATE INDEX...
ALTER INDEX...REBUILD
posted on 2009-03-22 16:45 Lucky 閱讀(277) 評(píng)論(0) 編輯 收藏