DBA 知識點歸納(三)

 1.撤銷表空間
(1)oracle把事務提交前的數據保存下來,這些記錄被稱爲撤銷記錄,保存撤銷記錄的存儲空間叫撤銷空間
(2)撤銷空間的功能:
  --|使用rollback語句撤銷事務
  --|進行數據庫的恢復
  --|提供數據的讀一致性
(3)撤銷管理的兩種方式
  --|自動撤銷管理:通過撤銷表空間實現回退操作,並自動在爲事務在撤銷表空間分配回滾段,保存撤銷記錄
  --|手動撤銷管理:通過回退段實現回滾操作,需要人工在撤銷表空間穿件回滾段保存撤銷記錄
2.Oracle回滾段
(1)原理--它是磁盤上的一段存儲空間,用來保存數據變化後的映射來提供一致性讀,保證事物的完整性
(2)回滾段的分類
  --|系統回滾段:當數據庫創建後,將自動創建個系統回滾段,該回滾段存放在系統表空間中
  --|非系統混滾段
      --|私有回滾段:在 ROLLBACK SEGMENTS參數中列出,以便例程在啓動時自動使其online
      --|公有回滾段:在OPS(oracle並行服務器)中出現,以便例程在啓動時自動使其online
  --|DEFERED回滾段:在表空間offline時自動創建,用於存放offline時回滾信息,當表空間online時自動刪除
(3)回滾段的創建
   create [public/private] rollback segment  rollback_segment_name
    tablespace ts_zmb
    storage(
           inital 128k,初始第一個區的大小
           next 128k,下一個區的大小
           minextents 3,必須大於2
           maxextents 50,不建議使用unlimit
           optimal 1000k  回滾段空閒時收縮到的位置,減少回滾段空間浪費
            )
(4)回滾段的使用
  --|分配回滾段:當事物開始時,Oracle爲該事務分配回滾段,並將擁有最少事務的回滾段分配給該事物。
  --|申請指定回滾段:set transaction use rollback segment rollback_segment_name
  --|一個區可以存放多個事務,但一個塊只能存放一個事務,事物以循環方式使用回滾段的區
(5) 回滾段的擴張
  --|當最後一個區用完後,回滾段指針移到下一個區,前提是下一區沒有活動事務。
  --|如果下一個區有活動的事務,就要新配一個區,這就是回滾段的擴張
  --|回滾段一直擴張區的個數一直擴張到回滾段的參數MAXEXTENTS的值

3.重做日誌文件
(1)重做日誌文件中的內容:
     --|是數據庫進行恢復操作所需要的最重要的物理存儲結構
     --|由重做項組成,每個重做項由一組修改的向量組成,每個向量機率了事物對一個數據庫所做的修改
(2)LGWR在以下幾種情況向聯機重做日誌文件寫入重做項:
     --|當用戶提交一個事物時
     --|重做數據佔有重做日誌緩存1/3時
     --|DBWn進程將數據庫高速緩存中的“髒”寫入數據文件之前
     --|每3秒執行一次LGWR進程
     --|日誌切換
(3)創建聯機重做日誌文件
  alter database add logfile
  group 1 ('D:\ORACLE/ORADATA/ORADB03\LOG1A.LOG',
           'E:\ORACLE/ORADATA/ORADB03\LOG1B.LOG')
SIZE 50m;
(4)創建成員文件
alter database add logfile member
'D:\ORACLE/ORADATA/ORADB03\LOG1C.LOG'
TO GROUP 1
(5)手工日誌切換
alter system switch logfile
(6)改變聯機重做日誌文件的名稱和位置
  --|關閉數據庫
  --|在操作系統中重命名重做日誌文件,或複製聯機重做日誌文件到新的位置
  --|重啓實例,加載數據庫,但不打開startup mount
  --|alter database rename file
    'c:\oracle'oradata\redo01.log'
     to 'd:\oracle'oradata\redo01.log''
  --|打開數據庫
alter database open
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章