Oracle第章物理存儲結構_第1頁
Oracle第章物理存儲結構_第2頁
Oracle第章物理存儲結構_第3頁
Oracle第章物理存儲結構_第4頁
Oracle第章物理存儲結構_第5頁
已閱讀5頁,還剩91頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第5章物理存儲結構本章內容Oracle數據庫系統結構數據文件控制文件重做日志文件歸檔重做日志文件本章要求理解Oracle數據庫的系統結構掌握數據文件的管理掌握控制文件的作用及其管理掌握重做日志文件的工作方式及其管理掌握數據庫歸檔模式設置及歸檔管理

5.1Oracle數據庫系統結構Oracle數據庫系統結構由數據庫實例和物理存儲結構組成。在Oracle數據庫的存儲結構包括物理存儲結構和邏輯存儲結構。物理存儲結構主要用于描述Oracle數據庫外部數據的存儲,即在操作系統中如何組織和管理數據,與具體的操作系統有關;邏輯存儲結構主要描述Oracle數據庫內部數據的組織和管理方式,與操作系統沒有關系。物理存儲結構是邏輯存儲結構在物理上的、可見的、可操作的、具體的體現形式。Oracle數據庫物理存儲結構數據文件:用于存儲數據庫中的所有數據;控制文件:用于記錄和描述數據庫的物理存儲結構信息;重做日志文件:用于記錄外部程序(用戶)對數據庫的改變操作;歸檔文件:用于保存已經寫滿的重做日志文件;初始化參數文件:用于設置數據庫啟動時的參數初始值;跟蹤文件:用于記錄用戶進程、數據庫后臺進程等的運行情況;口令文件:用于保存具有SYSDBA,SYSOPER權限的用戶名和SYS用戶口令;警告文件:用于記錄數據庫的重要活動以及發生的錯誤;備份文件:用于存放數據庫備份所產生的文件。5.2數據文件及其管理數據文件概述數據文件的管理5.2.1數據文件概述數據文件的內容用于保存數據庫中所有數據的文件。臨時數據文件是一種特殊的數據文件,其存儲內容是臨時性的,在一定條件下自動釋放。Oralce數據庫中的每個數據文件都具有兩個文件號,稱為絕對文件號和相對文件號,用于唯一地確定一個數據文件。其中,絕對文件號用于在整個數據庫范圍內唯一標識一個數據文件;相對文件號用于在表空間范圍內唯一標識一個數據文件。數據文件與表空間的關系一個表空間可以包含幾個數據文件一個數據文件只能從屬于一個表空間數據文件的管管理策略由于對數據庫庫的操作最終終轉換為對數數據文件的操操作,因此在在數據庫運行行過程中對數數據文件進行行頻繁的讀寫寫操作。為了了提搞I/O效率,應該合合理的分配數數據文件的存存儲位置。把不同存儲內內容的數據文文件放置在不不同的硬盤上上,可以并行行訪問數據,,提高系統讀讀寫的效率。。初始化參數文文件、控制文文件、重做日日志文件最好好不要與數據據文件存放在在同一個磁盤盤上,以免數數據庫發生介介質故障時,,無法恢復數數據庫。5.2.2數據文件的管管理創建數據文件件修改數據文件件的大小改變數據文件件的可用性改變數據文件件的名稱或位位置刪除數據文件件查詢數據文件件的信息利用OEM管理數據文件件(1)創建數據文文件數據文件依附附于表空間而而存在,創建建數據文件就就是向表空間間添加文件在創建數據文文件時應該根根據文件數據據量的大小確確定文件的大大小以及文件件的增長方式式。語法ALTERTABLESPACE…ADDDATAFILEALTERTABLESPACE…ADDTEMPFILE向ORCL數據庫的USERS表空間中添加加一個大小為為10MB的數據文件。。ALTERTABLESPACEUSERSADDDATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS02.DBF'SIZE10M;向ORCL數據庫的TEMP表空間中添加加一個大小為為5MB的臨時數據文文件。ALTERTABLESPACETEMPADDTEMPFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TEMP02.DBF'SIZE5M;(2)修改數據文文件大小方法設置數據文件件為自動增長長方式。手工改變數據據文件的大小小。設置數據文件件為自動增長長方式創建時設置數數據文件為自自動增長創建后修改數數據文件為自自動增長AUTOEXTENDONNEXT…MAXSIZE…|UNLIMITED手工改變數據據文件的大小小ALTERDATABASEDATAFILE…RESIZE…為ORCL數據庫的USERS表空間添加一一個自動增長長的數據文件件。ALTERTABLESPACEUSERSADDDATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS03.DBF'SIZE10MAUTOEXTENDONNEXT512KMAXSIZE50M;修改ORCL數據庫USERS表空間的數據據文件USERS02.DBF為自動增長方方式。ALTERDATABASEDATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS02.DBF'AUTOEXTENDONNEXT512KMAXSIZEUNLIMITED;取消ORCL數據庫USERS表空間的數據據文件USERS02.DBF的自動增長方方式。ALTERDATABASEDATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS02.DBF'AUTOEXTENDOFF;將ORCL數據庫USERS表空間的數據據文件USERS02.DBF大小設置為8MB。ALTERDATABASEDATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS02.DBF'RESIZE8M;(3)改變數據文文件的可用性性概念可以通過將數數據文件聯機機或脫機來改改變數據文件件的可用性。。在下面幾種情情況下需要改改變數據文件件的可用性::要進行數據文文件的脫機備備份時,需要要先將數據文文件脫機;需要重命名數數據文件或改改變數據文件件的位置時,,需要先將數數據文件脫機機;如果Oracle在寫入某個數數據文件時發發生錯誤,會會自動將該數數據文件設置置為脫機狀態態,并且記錄錄在警告文件件中。排除故故障后,需要要以手動方式式重新將該數數據文件恢復復為聯機狀態態。數據據文文件件丟丟失失或或損損壞壞,,需需要要在在啟啟動動數數據據庫庫之之前前將將數數據據文文件件脫脫機機。。歸檔檔模模式式下下數數據據文文件件可可用用性性的的改改變變數據據文文件件可可用用性性的的改改變變ALTERDATABASEDATAFILE…ONLINE|OFFLINE臨時時數數據據文文件件可可用用性性的的概概念念改改變變ALTERDATABASETEMPFILE…ONLINE|OFFLINE在數數據據庫庫處處于于歸歸檔檔模模式式下下,,將將ORCL數據據庫庫USERS表空空間間的的數數據據文文件件USERS02.DBF脫機機。。ALTERDATABASEDATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS02.DBF'OFFLINE;將ORCL數據據庫庫USERS表空空間間的的數數據據文文件件USERS02.DBF聯機機。。ALTERDATABASEDATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS02.DBF'ONLINE;非歸歸檔檔模模式式下下數數據據文文件件可可用用性性的的改改變變在非非歸歸檔檔模模式式下下,,通通常常不不能能將將數數據據文文件件脫脫機機。。如果果由由于于數數據據文文件件的的損損壞壞,,需需要要將將數數據據文文件件脫脫機機,,然然后后重重新新啟啟動動數數據據庫庫,,需需要要使使用用ALTERDATABASEDATAFILE…OFFLINEFORDROP語句句。。例例如如::ALTERDATABASEDATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS02.DBF'OFFLINEFORDROP;改變變表表空空間間中中所所有有數數據據文文件件的的可可用用性性在歸歸檔檔模模式式下下,,將將表表空空間間脫脫機機或或聯聯機機ALTERTABLESPACE...DATAFILEONLINE|OFFLINE在歸歸檔檔模模式式下下,,將將臨臨時時表表空空間間聯聯機機或或脫脫機機ALTERTABLESPACE...TEMPFILEONLINE|OFFLINE在歸歸檔檔模模式式下下,,將將USERS表空空間間中中所所有有的的數數據據文文件件脫脫機機,,但但USERS表空空間間不不脫脫機機。。然然后后再再將將USERS表空空間間中中的的所所有有數數據據文文件件聯聯機機。。ALTERTABLESPACEUSERSDATAFILEOFFLINE;RECOVERTABLESPACEUSERS;ALTERTABLESPACEUSERSDATAFILEONLINE;(4)改改變變數數據據文文件件的的名名稱稱或或位位置置改變變同同一一個個表表空空間間中中的的數數據據文文件件的的名名稱稱或或位位置置ALTERTABLESPACLE…RENAMEDATAFILE…TO改變變多多個個表表空空間間中中的的數數據據文文件件的的名名稱稱或或位位置置ALTERDATABASERENAMEFILE…TO注意意改變變數數據據文文件件的的名名稱稱或或位位置置時時,,Oracle只是是改改變變記記錄錄在在控控制制文文件件和和數數據據字字典典中中的的數數據據文文件件信信息息,,并并沒沒有有改改變變操操作作系系統統中中數數據據文文件件的的名名稱稱和和位位置置,,因因此此需需要要DBA手動動更更改改操操作作系系統統中中數數據據文文件件的的名名稱稱和和位位置置。。改變變同同一一個個表表空空間間中中的的數數據據文文件件的的名名稱稱或或位位置置更改改ORCL數據據庫庫USERS表空空間間的的USERS02.DBF和USERS03.DBF文件件名名為為USERS002.DBF和USERS003.DBF。將包含數數據文件件的表空空間置為為脫機狀狀態。ALTERTABLESPACEUSERSOFFLINE;在操作系系統中重重命名數數據文件件或移動動數據文文件到新新的位置置。分別別將USERS02.DBF和USERS03.DBF文件重命命名為USERS002.DBF和USERS003.DBF。使用ALTERTABLESPACE…RENAMEDATAFILE…TO語句進行行操作ALTERTABLESPACEUSERSRENAMEDATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS02.DBF','D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS03.DBF'TO'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS002.DBF','D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS003.DBF';將表空間間聯機。。ALTERTABLESPACEUSERSONLINE;改變多個個表空間間中的數數據文件件的名稱稱或位置置更改ORCL數據庫USERS表空間中中的USERS002.DBF文件位置置和修改改TOOLS表空間中中的TOOLS01.DBF文件名關閉數據據庫。SHUTDOWN在操作系系統中,,將USERS表空間中中的USERS002.DBF文件復制制到一個個新的位位置,如如D:\ORACLE\PRODUCT\10.2.0\ORADATA,修改TOOLS表空間的的數據文文件TOOLS01.DBF的名為TOOLS001.DBF。啟動數據據庫到MOUNT狀態。STARTUPMOUNT執行ALTERDATABASERENAMEFILE…TO語句更新新數據文文件名稱稱或位置置。ALTERDATABASERENAMEFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS002.DBF','D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TOOLS01.DBF'TO'D:\ORACLE\PRODUCT\10.2.0\ORADATA\USERS002.DBF','D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TOOLS001.DBF';打開數據據庫。ALTERDATABASEOPEN;(5)刪除數數據文件件刪除某個個表空間間中的某某個空數數據文件件ALTERTABLESPACE…DROPDATAFILE刪除某個個臨時表表空間中中的某個個空的臨臨時數據據文件ALTERTABLESPACE…DROPTEMPFILEALTERDATABASETEMPFILE…DROP所謂的空空數據文文件或空空臨時數數據文件件是指為為該文件件分配的的所有區區都被回回收。刪除數據據文件或或臨時數數據文件件的同時時,將刪刪除控制制文件和和數據字字典中與與該數據據文件或或臨時數數據文件件的相關關信息,,同時也也將刪除除操作系系統中對對應的物物理文件件。刪除USERS表空間中中的數據據文件USERS03.DBF和刪除TEMP臨時表空空間中的的臨時數數據文件件TEMP03.DBF。ALTERTABLESPACEUSERSDROPDATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS03.DBF';ALTERTABLESPACETEMPDROPTEMPFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TEMP03.DBF';刪除臨時時數據文文件TEMP03.DBF還可以表表示為ALTERDATABASETEMPFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TEMP02.DBF'DROPINCLUDINGDATAFILES;刪除數據據文件或或臨時數數據文件件時受到到以下約約束:數據庫運運行在打打開狀態態數據文件件或臨時時數據文文件必須須是空的的不能刪除除表空間間的第一一個或唯唯一的一一個數據據文件或或臨時數數據文件件不能刪除除只讀表表空間中中的數據據文件不能刪除除SYSTEM表空間的的數據文文件不能刪除除采用本本地管理理的處于于脫機狀狀態的數數據文件件。(6)查詢數數據文件件信息DBA_DATA_FILES:包含數數據庫中中所有數數據文件件的信息息,包括括數據文文件所屬屬的表空空間、數數據文件件編號等等。DBA_TEMP_FILES:包含數數據庫中中所有臨臨時數據據文件的的信息。。DBA_EXTENTS:包含所所有表空空間中已已分配的的區的描描述信息息。USER_EXTENTS:包含當當前用戶戶所擁有有的對象象在所有有表空間間中已分分配的區區的描述述信息。。DBA_FREE_SPACE:包含表表空間中中空閑區區的描述述信息。。USER_FREE_SPACE:包含當當前用戶戶可訪問問的表空空間中空空閑區的的描述信信息。V$DATAFILE:包含從從控制文文件中獲獲取的數數據文件件信息。。V$DATAFILE_HEADER:包含從數數據文件頭頭部獲取的的信息。V$TEMPFILE:包含所有有臨時文件件的基本信信息。查詢數據文文件動態信信息SELECTNAME,FILE#,STATUS,CHECKPOINT_CHANGE#FROMV$DATAFILE查詢數據文文件的詳細細信息SELECTTABLESPACE_NAME,AUTOEXTENSIBLE,FILE_NAMEFROMDBA_DATA_FILES;查詢數據文文件的增長長方式SELECTTABLESPACE_NAME,BYTES,AUTOEXTENSIBLE,FILE_NAMEFROMDBA_DATA_FILES查詢臨時數數據文件信信息SELECTTABLESPACE_NAME,FILE_NAME,AUTOEXTENSIBLEFROMDBA_TEMP_FILES;(7)利用OEM管理數據文文件創建數據文文件編輯數據文文件查看數據文文件信息刪除數據文文件5.3控制文件控制文件概概述控制文件管管理5.3.1控制文件概概述控制文件的的性質控制文件是是一個很小小的二進制制文件。控制文件描描述了整個個數據庫的的結構。在加載數據據庫時,實實例必須首首先通過初初始化參數數文件找到到數據庫的的控制文件件。在數據庫運運行期間,,控制文件件始終在不不斷更新,,以便記錄錄數據文件件和重做日日志文件的的變化每個數據庫庫至少擁有有一個控制制文件。一一個數據庫庫也可以同同時擁有多多個控制文文件。分配在不同同的物理硬硬盤中,以以免數據庫庫或硬盤損損壞時,能能夠利用備備份的控制制文件啟動動數據庫實實例,可以以提高數據據庫的可靠靠性。控制文件的的內容數據庫名稱稱和標識;;數據庫創建建的時間;;表空間名稱稱;數據文件和和重做日志志文件的名名稱和位置置;當前重做日日志文件序序列號;數據庫檢查查點的信息息;回退段的開開始和結束束;重做日志的的歸檔信息息;備份信息;;數據庫恢復復所需要的的同步信息息。控制文件中中的最大化化參數包括括:MAXLOGFILES:最大重做做日志文件件組數量;;MAXLOGMEMBERS:重做日志志文件組中中最大成員員數量;MAXLOGHISTORY:最大歷史史重做日志志文件數量量;MAXDATAFILES:最大數據據文件數量量;MAXINSTANCES:可同時訪訪問的數據據庫最大實實例個數。??刂莆募芄芾聿呗設racle建議最少有有兩個控制制文件,通通過多路鏡鏡像技術,,將多個控控制文件分分散到不同同的磁盤中中。在數據據庫運行過過程中,始始終讀取CONTROL_FILES參數指定的的第一個控控制文件,,并同時寫寫CONTROL_FILES參數指定的的所有控制制文件。如如果其中一一個控制文文件不可用用,則必須須關閉數據據庫并進行行恢復。每次對數據據庫結構進進行修改后后(添加、、修改、刪刪除數據文文件、重做做日志文件件),應該該及時備份份控制文件件。5.3.2控制文件的的管理創建控制文文件實現多路鏡鏡像控制文文件備份控制文文件刪除控制文文件查看控制文文件的信息息利用OEM管理控制文文件(1)創建控制制文件創建控制文文件的情形形控制文件全全部丟失或或損壞;需要修改數數據庫名稱稱;在Oracle10.2.0之前的版本本中,需要要修改某個個最大化參參數。CREATECONTROLFILE語句CREATECONTROLFILE[REUSE][SET]DATABASEdatabase[LOGFILElogfile_clause]RESETLOGS|NORESETLOGS[DATAFILEfile_specification][MAXLOGFILES][MAXLOGMEMBERS][MAXLOGHISTORY][MAXDATAFILES][MAXINSTANCES][ARCHIVELOG|NOARCHIVELOG][FORCELOGGING][CHARACTERSETcharacter_set]創建控制文文件的基本本步驟制作數據庫庫中所有的的數據文件件和重做日日志文件列列表SELECTMEMBERFROMV$LOGFILE;SELECTNAMEFROMV$DATAFILE;SELECTVALUEFROMV$PARAMETERWHERENAME='CONTROL_FILES';如果數據庫庫仍然處于于運行狀態態,則關閉閉數據庫SHUTDOWN在操作系統統級別備份份所有的數數據文件和和聯機重做做日志文件件啟動實例到到NOMOUNT狀態STARTUPNOMOUNT利用前面得得到的文件件列表,執執行CREATECONTROLFILE創建一個新新控制文件件。在操作系統統級別對新新建的控制制文件進行行備份如果數據庫庫重命名,,則編輯DB_NAME參數來指定定新的數據據庫名稱如果數據庫庫需要恢復復,則進行行恢復數據據庫操作如果創建控控制文件時時指定了NORESTLOGS,可以完全全恢復數據據庫。RECOVERDATABASE;如果創建控控制文件時時指定了RESETLOGS,則必須在在恢復時指指定USINGBACKUPCONTROLFILE。RECOVERDATABASEUSINGBACKUPCONTROLFILE;打開數據庫庫如果數據庫庫不需要恢恢復或已經經對數據庫庫進行了完完全恢復,,則可以正正常打開數數據庫。ALTERDATABASEOPEN;如果在創建建控制文件件時使用了了RESETLOGS參數,則必必須指定以以RESETLOGS方式打開數數據庫。ALTERDATABASEOPENRESETLOGS;(2)實現多路路鏡像控制制文件編輯初始化化參數CONTROL_FILESALTERSYSTEMSETCONTROL_FILES=…SCOPE=SPFILE;關閉數據庫庫SHUTDOWNIMMEDIATE;拷貝一個原原有的控制制文件到新新的位置,,并重新命命名重新啟動數數據庫STARTUP編輯初始化化參數CONTROL_FILES。ALTERSYSTEMSETCONTROL_FILES='D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL01.CTL','D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL02.CTL','D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL03.CTL','D:\ORACLE\PRODUCT\10.2.0\ORADATA\CONTROL04.CTL'SCOPE=SPFILE;注意:前3個控制文件件是原有的的控制文件件,最后一一個控制文文件是將要要添加的。。關閉數據庫庫SHUTDOWNIMMEDIATE;拷貝一個原原有的控制制文件到新新的位置,,并重新命命名??截怐:\ORACLE\ORADATA\CONTROL01.CTL到D:\ORACLE\ORADATA目錄下,并并重命名為為CONTROL04.CTL。重新啟動數數據庫STARTUP(3)備份控制制文件將控制文件件備份為二二進制文件件ALTERDATABASEBACKUPCONTROLFILETO…將控制文件件備份為文文本文件ALTERDATABASEBACKUPCONTROLFILETOTRACE將控制文件件備份到<ORACLE_BASE>\admin\<SID>\udump目錄下的跟跟蹤文件中中將控制文件備備份為二進制制文件。ALTERDATABASEBACKUPCONTROLFILETO'D:\ORACLE\CONTROL.BKP';將控制文件備備份為文本文文件。ALTERDATABASEBACKUPCONTROLFILETOTRACE;(4)刪除控制文文件編輯CONTROL_FILES初始化參數,,使其不包含含要刪除的控控制文件;關閉數據庫;;在操作系統中中刪除控制文文件;重新啟動數據據庫。(5)查詢控制文文件的信息V$DATABASE:從控制文件件中獲取的數數據庫信息;;V$CONTROLFILE:包含所有控控制文件名稱稱與狀態信息息;V$CONTROLFILE_RECORD_SECTION:包含控制文文件中各記錄錄文檔段信息息;V$PARAMETER:可以獲取初初始化參數CONTROL_FILES的值。(6)利用OEM管理控制文件件查看控制文件件信息備份控制文件件5.4重做日志文件件重做日志文件件概述重做日志文件件的管理5.4.1重做日志文件件概述重做日志文件件的概念重做日志文件件,保存了用用戶對數據庫庫所作的更新操作((DDL、DML),包含的主主要信息是記記錄事務的開開始和結束、、事務中每項項操作的對象和和類型、更新新操作前后的的數據值等。。重做日志文件件是由重做記記錄構成的,,每個重做記記錄由一組修修改相量組成成。用戶對數據庫庫所做的修改改都是在數據據庫的數據高高速緩沖區中中進行的,同同時將產生的的重做記錄寫寫入重做日志志緩沖區。在在一定條件下下由DBWR進程將數據高高速緩沖區中中修改后的結結果成批寫回回數據文件中中,而重做日日志緩沖區中中的重做記錄錄由LGWR進程周期性的的寫入重做日日志文件。利用重做日志志文件恢復數數據庫是通過過事務的重做做(REDO)或回退(UNDO)實現的。重做日志文件件的工作過程程每個數據庫至至少需要兩個個重做日志文文件,采用循循環寫的方式式進行工作。。當一個重做做日志文件寫寫滿后,進程程LGWR就會移到下一一個日志組,,稱為日志切切換,同時信信息會寫到控控制文件中。。重做日志文件件工作流程為了保證LGWR進程的正常進進行,通常采采用重做日志志文件組(GROUP),每個組中包包含若干完全全相同的重做做日志文件成成員(MEMBER),這些成員文文件相互鏡像像。5.4.2重做日志文件件的管理添加重做日志志文件組添加重做日志志文件組成員員文件改變重做日志志文件組成員員文件的名稱稱和位置刪除重做日志志文件組成員員刪除重做日志志文件組重做日志文件件切換清空重做日志志文件組查看重做日志志文件信息利用OEM管理重做日志志文件(1)添加重做日志志文件組語法ALTERDATABASEADDLOGFILE……示例ALTERDATABASEADDLOGFILEGROUP4('D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO04a.LOG','D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO04b.LOG')SIZE4M;REDO2b.LOGREDO1b.LOGGroup1Group2Group3REDO3b.LOGREDO2a.LOGREDO3a.LOGREDO1a.LOGGroup4REDO4b.LOGREDO4a.LOG注意:分配給每個重重做日志文件件的初始空間間至少為4MB。如果沒有使用用GROUP子句指定組號號,則系統會會自動產生組組號,為當前前重做日志文文件組的個數數加1。在Oracle10.2.0之前的版本中中,數據庫最最多允許的重重做日志文件件組的數量由由控制文件中中的MAXLOGFILES參數決定。在Oracle10.2.0之前的版本中中,每個重做做日志文件組組中最多成員員文件數量由由控制文件中中的MAXLOGMEMBERS參數決定。(2)添加重做日日志文件組成成員語法ALTERDATABASEADDLOGFILEMEMBER…TOGROUP…示例ALTERDATABASEADDLOGFILEMEMBER'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01C.LOG'TOGROUP1,'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO04C.LOG'TOGROUP4;注意:同一個重做日日志文件組中中的成員文件件存儲位置應應盡量分散。。不需要指定文文件大小。新新成員文件大大小由組中已已有成員大小小決定。(3)改變重做日日志文件組成成員名稱或位位置語法ALTERDATABASERENAMEFILE…TO注意只能更改處于于INACTIVE或UNUSED狀態的重做日日志文件組的的成員文件的的名稱或位置置。示例將重做日志文文件REDO01C.LOG重命名為REDO01B.LOG,將REDO04C.LOG移到D:\ORACLE\PRODUCT\10.2.0\ORADATA目錄下。檢查要修改的的成員文件所所在的重做日日志文件組狀狀態SELECTgroup#,statusFROMv$log;如果要修改的的日志文件組組不是處于INACTIVE或UNUSED狀態,則需要要進行手動日日志切換。重命名名重做做日志志文件件或將將重做做日志志文件件移到到新位位置打開D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL文件夾夾,將REDO01C.LOG更名為為REDO01B.LOG,同時時將REDO04C.LOG移到D:\ORACLE\PRODUCT\10.2.0\ORADATA文件夾夾下。。執行ALTERDATABASERENAMEFILE…TO語句ALTERDATABASERENAMEFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01C.LOG','D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO4C.LOG'TO'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO001B.LOG','D:\ORACLE\PRODUCT\10.2.0\ORADATA\REDO04C.LOG';(4)刪除重重做日志志文件組組成員語法ALTERDATABASEDROPLOGFILEMEMBER注意事項項只能刪除除狀態為為INACTIVE或UNUSED的重做日日志文件件組中的的成員;;若要刪刪除狀態態為CURRENT的重做日日志文件件組中的的成員,,則需執執行一次次手動日日志切換換。如果數據據庫處于于歸檔模模式下,,則在刪刪除重做做日志文文件之前前要保證證該文件件所在的的重做日日志文件件組已歸歸檔。每個重做做日志文文件組中中至少要要有一個個可用的的成員文文件,即即VALID狀態的成成員文件件。如果果要刪除除的重做做日志文文件是所所在組中中最后一一個可用用的成員員文件,,則無法法刪除。。ALTERDATABASEDROPLOGFILEMEMBER'D:\ORACLE\PRODUCT\10.2.0\ORADATA\REDO4c.LOG';Group4REDO4a.LOGREDO4b.LOGREDO4c.LOG(5)刪除重重做日志志文件組組語法ALTERDATABASEDROPLOGFILEGROUP注意事項項無論重做做日志文文件組中中有多少少個成員員文件,,一個數數據庫至至少需要要使用兩兩個重做做日志文文件組。。如果數據據庫處于于歸檔模模式下,,則在刪刪除重做做日志文文件組之之前,必必須確定定該組已已經被歸歸檔。只能刪除除處于INACTIVE狀態或UNUSED狀態的重重做日志志文件組組,若要要刪除狀狀態為CURRENT的重做日日志文件件組,則則需要執執行一次次手動日日志切換換。示例ALTERDATABASEDROPLOGFILEGROUP4;REDO2a.LOGREDO1a.LOGGroup1Group2Group3REDO3a.LOGGroup4REDO4a.LOGREDO4b.LOG(6)重做日日志文件件組切換換當LGWR進程結束束對當前前重做日日志文件件組的使使用,開開始寫入入下一個個重做日日志文件件組時,,稱為發發生了一一次“日志切換換”。通常,只只有當前前的重做做日志文文件組寫寫滿后才才發生日日志切換換,但是是可以通通過設置置參數ARCHIVE_LAG_TARGET控制日志志切換的的時間間間隔,在在必要時時也可以以采用手手工強制制進行日日志切換換。如果需要要將當前前處于CURRENT狀態的重重做日志志組立即即切換到到INACTIVE狀態,必必須進行行手工日日志切換換。手動日志志切換的的語法ALTERSYSTEMSWITCHLOGFILE查看日至至切換狀狀態SELECT*FROMV$LOGFILE;當發生日日志切換換時,系系統將為為新的重重做日志志文件產產生一個個日志序序列號,,在歸檔檔時該日日志序列列號一同同被保存存。日志志序列號號是在線線日志文文件和歸歸檔日志志文件的的唯一標標識。(7)清除重做做日志文文件組基本概念念在數據庫運行行過程中,聯聯機重做日志志文件可能會會因為某些原原因而損壞,,導致數據庫庫最終由于無無法將損壞的的重做日志文文件歸檔而停停止,此時可可以在不關閉閉數據庫的情情況下,手工工清除損壞的的重做日志文文件內容,避避免出現數據據庫停止運行行的情況。清除重做日志志文件就是將將重做日志文文件中的內容容全部清除,,相當于刪除除該重做日志志文件,然后后再重新建立立它。清除重重做日志文件件組是將該文文件組中的所所有成員文件件全部清空。。語句ALTERDATABASECLEARLOGFILEGROUP…在下列兩種情情況下,清除除重做日志文文件組的操作作將無法進行行。數據庫只有兩兩個重做日志志文件組;需要清除的重重做日志文件件組處于CURRENT狀態。如果要清空的的重做日志文文件組尚未歸歸檔,則必須須使用UNARCHIVED子句,以避免免對這個重做做日志文件組組進行歸檔。。ALTERDATABASECLEARUNARCHIVEDLOGFILEGROUP4;(8)查看重做日日志文件信息息數據字典視圖圖V$LOG:包含從控制制文件中獲取取的所有重做做日志文件組組的基本信息息。V$LOGFILE:包含重做日日志文件組及及其成員文件件的信息。V$LOG_HISTORY:包含關于重重做日志文件件的歷史信息息。查詢重做日志志文件組的信信息SELECTGROUP#,SEQUENCE#,MEMBERS,STATUS,ARCHIVEDFROMV$LOG;查詢重做日志志文件的信息息SELECTGROUP#,TYPE,MEMBERFROMV$LOGFILEORDERBYGROUP#;(9)利用OEM管理重做日志志文件創建重做日志志組編輯重做日志志組查看重做日志志組5.5歸檔重做日志志文件重做日志文件件歸檔概述數據庫歸檔模模式管理5.5.1重做日志文件件歸檔概述基本概念Oracle數據庫能夠把把已經寫滿了了的重做日志志文件保存到到指定的一個個或多個位置置,被保存的的重做日志文文件的集合稱稱為歸檔重做做日志文件,,這個過程稱稱為歸檔。根據是否進行行重做日志文文件歸檔,數數據庫運行可可以分為歸檔檔模式或非歸歸檔模式。歸檔模式與非非歸檔模式比比較在歸檔模式下下,數據庫中中歷史重做日日志文件全部部被保存,因因此在數據庫庫出現故障時時,即使是介介質故障,利利用數據庫備備份、歸檔重重做日志文件件和聯機重做做日志文件也也可以完全恢恢復數據庫。。在非歸檔模式式下,由于沒沒有保存過去去的重做日志志文件,數據據庫只能從實實例崩潰中恢恢復,而無法法進行介質恢恢復。在非歸歸檔模式下不不能執行聯機機表空間備份份操作,不能能使用聯機歸歸檔模式下建建立的表空間間備份進行恢恢復,而只能能使用非歸檔檔模式下建立立的完全備份份來對數據庫庫進行恢復。。在歸檔模式和和非歸檔模式式下進行日志志切換的條件件也不同。在在非歸檔模式式下,日志切切換的前提條條件是已寫滿滿的重做日志志文件在被覆覆蓋之前,其其所有重做記記錄所對應的的事務的修改改操作結果全全部寫入到數數據文件中。。在歸檔模式式下,日志切切換的前提條條件是已寫滿滿的重做日志志文件在被覆覆蓋之前,不不僅所有重做做記錄所對應應的事務的修修改操作結果果全部寫入到到數據文件中中,還需要等等待歸檔進程程完成對它的的歸檔操作。。5.5.2數據庫歸檔模模式管理數據庫歸檔/非歸檔模式設設置歸檔模式下歸歸檔方式的選選擇歸檔路徑的設設置設置可選或強強制歸檔目標標查詢歸檔信息息(1)設置歸檔/非歸檔模式關閉數據庫SHUTDOWNIMMEDIATE啟動數據庫到到MOUNT狀態STARTUPMOUNT使用ALTERDATABASEARCHIVELOG語句將數據庫庫設置為歸檔檔模式。ALTERDATABASEARCHIVELOG;或使用ALTERDATABASENOARCHIVELOG語句將數據庫庫設置為非歸歸檔模式。ALTERDATABASENOARCHIVELOG;打開數據庫ALTERDATABASEOPEN;(2)歸檔模式下下歸檔方式的的選擇數據庫在歸檔檔模式下運行行時,可以采采用自動或手手動兩種方式式歸檔重做日日志文件。如果選擇自動動歸檔方式,,那么在重做做日志文件被被覆蓋之前,,ARCH進程自動將重

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論