oracle數據庫-管理-體系結構課件_第1頁
oracle數據庫-管理-體系結構課件_第2頁
oracle數據庫-管理-體系結構課件_第3頁
oracle數據庫-管理-體系結構課件_第4頁
oracle數據庫-管理-體系結構課件_第5頁
已閱讀5頁,還剩103頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1oracle管理科學數據庫技術培訓1oracle管理科學數據庫技術培訓2oracle數據庫的特點Oracle是oracle公司出品的十分優秀的DBMS。目前,中國電信行業使用的數據庫系統基本上全部是oracle(不是windows下的)。其市場占有率為32.6%。如果實現的是高端企業應用,需要處理的并發數據量很大,同時對數據庫的可靠性、安全性和可擴展性又很高的要求,那么oracle是很好的選擇。2oracle數據庫的特點Oracle是oracle公司出品3oracle數據庫的特點支持大數據庫、多用戶的高性能的事務處理ORACLE遵守數據存取語言、操作系統、用戶接口和通訊協議的工業標準。實施安全性控制和完整性控制支持分布式數據庫和分布處理。分布式系統像集中式數據庫具有一樣的透明性和數據一致性。具有可移植性、可兼容性和連接性。Oracle10g支持網格計算3oracle數據庫的特點支持大數據庫、多用戶的高性能的事務4第一章ORACLE的體系結構Oracle的物理結構Oracle的系統全局區Oracle的進程4第一章ORACLE的體系結構5ORACLE的體系結構

體系結構概述物理結構

數據文件、日志文件、控制文件、參數文件系統全局區(SystemGlobalArea)

共享池、數據緩沖區、日志緩沖區進程

用戶進程、服務器進程、后臺進程5ORACLE的體系結構體系結構概述物理結構6共享池數據緩沖區日志緩沖區SGA數據文件日志文件參數文件控制文件DBWRARCHCKPTLGWRPMONLCKnRECOSMON存儲介質ServerUserUserUserORACLE的體系結構

體系結構圖示6共享池數據緩沖區日志緩沖區SGA數據文件日志文件參數文件控7數據文件日志文件控制文件參數文件ORACLE的體系結構物理結構7數據文件ORACLE的體系結構物理結構8

數據文件(DataFile)是物理存儲ORACLE數據庫數據的文件。其特點如下:每一個數據文件只與一個數據庫相聯系。一個表空間可包含一個或多個數據文件。一個數據文件只能屬于一個表空間ORACLE的體系結構物理結構8數據文件(DataFile)是物理存儲ORACL9

日志文件(LogFile)記錄所有對數據庫數據的修改,以備恢復數據時使用。其特點如下:每一個數據庫至少包含兩個日志文件組。日志文件組以循環方式進行寫操作。每一個日志文件成員對應一個物理文件。ORACLE的體系結構物理結構9日志文件(LogFile)記錄所有對數據庫數據的10

日志開關(LogSwitch)是為實現日志文件組的循環使用而設置的。出現日志開關的情況如下:當一個日志文件組被填滿時關閉數據庫時

DBA手動轉移日志開關ORACLE的體系結構物理結構10日志開關(LogSwitch)是為實現日志文件11日志文件寫操作圖示LogFile1LogFile2Group1Group2Member2.1Member1.1ORACLE的體系結構物理結構11日志文件寫操作圖示LogFile1LogFile12

鏡像日志文件是為防止日志文件的丟失,在不同磁盤上同時維護兩個或多個聯機日志文件的副本。其特點如下:每個日志文件組至少包含兩個日志文件成員。每組的成員數目相同。同組的所有成員同時被修改。同組的成員大小相同,不同組的成員大小可不同。ORACLE的體系結構物理結構12鏡像日志文件是為防止日志文件的丟失,在不同磁盤上13鏡像日志文件圖示Group1Group2LogFile1LogFile2Member2.1Member1.1LogFile3LogFile4Member2.2Member1.2Disk1Disk2ORACLE的體系結構物理結構13鏡像日志文件圖示Group1Group2LogFi14共享池數據緩沖區日志緩沖區SGADBWRARCHCKPTLGWRPMONLCKnRECOSMON存儲介質ServerUserUserUserORACLE的體系結構

體系結構圖示14共享池數據緩沖區日志緩沖區SGADBWRARCHCKPT15

控制文件(ControlFile)是一個較小的二進制文件,用于描述數據庫物理結構。描述信息如下:數據庫建立的日期。數據庫名。數據庫中所有數據文件和日志文件的文件名及路徑。恢復數據庫時所需的同步信息。要點注意:在打開和存取數據庫時都要訪問該文件。鏡像控制文件。記錄控制文件名及路徑的參數為:

CONTROL_FILESORACLE的體系結構物理結構15控制文件(ControlFile)是一個較小的16

參數文件(PFILE)和服務器端參數文件(SPFILE)oracle8i以前的版本都是使用普通文本形式的本地初始化參數文件,initSID.ora。自oracle9i開始使用服務器端參數文件,SPFILE是二進制格式的,默認名為SPFILE<SID>.ORA。盡管能夠打開并編輯器中的內容,但是任何用戶都不應該手工修改其中的內容,否則實例將無法啟動。ORACLE的體系結構物理結構16參數文件(PFILE)和服務器端參數文件(SPF17參數文件的作用:確定存儲結構的大小。設置數據庫的全部缺省值。設置數據庫的范圍。設置數據庫的各種物理屬性。優化數據庫性能。ORACLE的體系結構物理結構17參數文件的作用:ORACLE的體系結構物理結構18創建服務器端初始化參數文件

SPFILE在創建時必須基于一個傳統的文本初始化參數文件,而且必須在啟動實例之前完成創建工作。Sql>createSPFILE=‘D:\ORACLE\…’

FROMPFILE=‘D:\ORACLE\…\TEMPFILE\…’; PFILE子句是必需的,SPFILE子句可以省略,則SPFILE存貯在缺省位置<ORACLE_HOME>\DATABASE\下。ORACLE的體系結構物理結構18創建服務器端初始化參數文件ORACLE的體系結構19ORACLE的體系結構物理結構查看服務器端參數文件

在SQLPLUS中使用SHOWPARAMETERS命令 查詢V$PARAMETER或V$PARAMETER2動態性能視圖,V$PARAMETER2的格式更加簡介。查詢V$SPPARAMETER動態性能視圖導出服務器端參數文件

SQL>CREATEPFILE=‘D:\…’FROMSPFILE=‘…’19ORACLE的體系結構物理結構查看服務器端參數文20ORACLE的體系結構物理結構修改服務器端參數文件

在9i中直接手工修改本地參數化文件是沒用的,不會改變數據庫的設置。

利用ALTERSYSTEMSETparameter=value語句可以在數據庫運行時修改初始化參數的值。 在SET子句中可以使用SCOPE選項來設置影響范圍,所謂影響范圍就是ALTERSYSTEM語句對參數的修改是僅對當前實例有效(記錄在內存中),還是永久有效(記錄在SPFILE中)。

20ORACLE的體系結構物理結構修改服務器端參數文21ORACLE的體系結構物理結構SCOPE選項有三種選擇:SCOPE=SPFILE對參數的修改僅記錄在SPFILE,改選項同時適用動態初始化參數和靜態初始化參數。修改后的參數在下次啟動后生效SCOPE=MEMORY對參數的修改僅記錄在內存中,更改立即生效,僅對本次實例有效。對靜態參數,不能使用這個選項值。SCOPE=BOTH對參數的修改同時記錄在內存和SPFILE中,立即生效,下次啟動后使用修改后的參數。對于靜態參數,不能使用這個選項。21ORACLE的體系結構物理結構SCOPE選項有三22ORACLE的體系結構物理結構主要的初始化參數

全局數據庫名和SID

DB_NAME本地數據庫標識,在只有一個實例的情況下,本地數據庫標識和實例標識SID相同。 DB_DOMAIN網絡域名 則全局名GLOBAL_NAME為DB_NAME.DB_DOMAIN

控制文件參數

control_files='d:\oracle\oradata\test\CONTROL01.CTL','d:\oracle\oradata\test\CONTROL02.CTL','d:\oracle\oradata\test\CONTROL03.CTL'22ORACLE的體系結構物理結構主要的初始化參數23ORACLE的體系結構物理結構 數據塊參數

db_block_size,數據庫建立后不能修改。一般是操作系統塊的整數倍。對I/O密集的操作,使用雙倍大小的數據塊能提高40%左右的I/O性能,但是所這塊的增大,數據庫對內存SGA的需求也增大,會對系統性能產生負面影響

db_cache_size指定SGA區數據庫告訴緩沖區的大小。Oracle8i中是使用db_block_buffers來決定的。 撤銷空間的管理方式undo_management='AUTO‘\’MANUAL’undo_tablespace='UNDOTBS1'23ORACLE的體系結構物理結構 數據塊參數24共享池數據緩沖區日志緩沖區SGA數據文件日志文件參數文件控制文件DBWRARCHCKPTLGWRPMONLCKnRECOSMON存儲介質ServerUserUserUserORACLE的體系結構

體系結構圖示24共享池數據緩沖區日志緩沖區SGA數據文件日志文件參數文件25共享池數據庫緩沖區日志緩沖區ORACLE的體系結構系統全局區25共享池ORACLE的體系結構26實例(INSTANCE)是存取和控制數據庫的軟件機制,它由系統全局區(SystemGlobalArea,簡稱SGA)和后臺進程組成。ORACLE的體系結構系統全局區26實例(INSTANCE)ORACLE的體系結構27SGA是ORACLE系統為實例分配的一組共享緩沖存儲區,用于存放數據庫數據和控制信息,以實現對數據庫數據的管理和操作。ORACLE的體系結構系統全局區27SGA是ORACLE系統為實例分配的一組共享緩沖存儲區,28ORACLE的體系結構系統全局區SGA區的初始化參數

DB_CACHE_SIZE數據庫緩存的大小

LOG_BUFFER重做日志緩存的大小

SHARED_POOL_SIZE共享池的大小

LARGE_POOL_SIZE大型池的大小為了優化系統性能,SGA區最好全部位于物理內存中。如果超過了系統物理內存的大小,則不得不使用虛擬內存來補償,部分SGA區必須由操作系統進行換頁操作,將在很大程度上降低系統性能。共享池數據緩沖區日志緩沖區SGA28ORACLE的體系結構系統全局區SGA區的初始化參29共享池(SharedPool)由共享SQL區和數據字典區組成。參數SHARED_POOL_SIZE確定共享池的大小。共享SQL區包括

SQL或PL/SQL語句的文本

SQL或PL/SQL語句的語法分析形式

SQL或PL/SQL語句的執行方案數據字典區用于存放數據字典信息行。ORACLE的體系結構系統全局區29共享池(SharedPool)由共享SQL區和數據字典30數據緩沖存儲區(DatabaseBufferCache)用于存儲從數據文件中讀的數據的備份。數據緩沖區數據文件DB_BLOCK_SIZE

確定數據塊的大小,一般為2K或4K,對于大數據塊的數據庫,此參數值為物理塊的倍數。DB_CACHE_SIZE(oracle9i)DB_BLOCK_BUFFERS(oracle8i)確定數據塊的數目。ORACLE的體系結構系統全局區30數據緩沖存儲區(DatabaseBufferCach31數據緩沖存儲區分為

臟列表包括被修改過但尚未寫到數據文件的緩沖塊。

LRU(LeastRecentlyUsed)列表

包括空閑緩沖塊、正在存取的緩沖塊、已被修改但尚未移到臟列表的緩沖塊。ORACLE的體系結構系統全局區31數據緩沖存儲區分為ORACLE的體系結構系統全局32日志緩沖存儲區(LogBuffer)以記錄項的形式備份數據庫緩沖區中被修改的緩沖塊,這些記錄將被寫到日志文件中。LOG_BUFFER

確定日志緩沖區的大小。日志緩沖區日志文件ORACLE的體系結構系統全局區32日志緩沖存儲區(LogBuffer)以記錄項的形式備份33共享池數據緩沖區日志緩沖區SGA數據文件日志文件參數文件控制文件DBWRARCHCKPTLGWRPMONLCKnRECOSMON存儲介質ServerUserUserUserORACLE的體系結構

體系結構圖示33共享池數據緩沖區日志緩沖區SGA數據文件日志文件參數文件34用戶進程服務器進程后臺進程ORACLE的體系結構進程34用戶進程ORACLE的體系結構進程35

ORACLE實例分為單進程實例和多進程實例兩種。

SINGLE_PROCESS單進程/多進程實例的轉換。ORACLE的體系結構進程35ORACLE實例分為單進程實例和多進程實36單進程/單用戶一個進程執行全部ORACLE代碼。SGAORACLEServer數據庫應用ORACLE的體系結構進程36單進程/單用戶SGAORACLEServerO37多進程/多用戶使用多個進程執行ORACLE的不同代碼,對于每一個連接的用戶都有一個進程。SGA服務器進程用戶進程后臺進程ORACLE的體系結構進程37多進程/多用戶SGA服務器進程用戶進程后臺進程38用戶進程當用戶運行一個應用程序時,就建立一個用戶進程。ORACLE的體系結構用戶進程38用戶進程ORACLE的體系結構用戶進程39服務器進程處理用戶進程的請求。處理過程分析SQL命令并生成執行方案。從數據緩沖存儲區中讀取數據。將執行結果返回給用戶。ORACLE的體系結構服務器進程39服務器進程ORACLE的體系結構服務器進程40后臺進程為所有數據庫用戶異步完成各種任務。主要的后臺進程有

DBWR數據庫寫進程

LGWR日志寫進程

CKPT檢查點寫進程

SMON系統監控進程

PMON進程監控進程

ARCH歸檔進程

RECO恢復進程

LCKn封鎖進程ORACLE的體系結構后臺進程40后臺進程主要的后臺進程有ORACLE的體系結構后41ORACLE的體系結構后臺進程DBWR(DataBaseWriter)

將數據緩沖區中所有修改過的緩沖塊數據寫到數據文件中,并使用LRU(Least-Recently-Used)算法來保持緩沖區中的數據塊為最近經常使用的,以減少I/O次數。該進程在啟動實例時自動啟動41ORACLE的體系結構后臺進程DBWR(Data42DBWR進行寫操作的情況:臟列表達到最低限制。相當于參數DB_BLOCK_WRITE_BATCH值的一半。一個進程在LRU列表中掃描指定數目的緩沖塊,未找到空閑緩沖塊。參數DB_BLOCK_MAX_SCAN_CNT確定掃描數目。ORACLE的體系結構后臺進程42DBWR進行寫操作的情況:ORACLE的體系結構43ORACLE的體系結構后臺進程出現超時3秒鐘內該進程未活動,則該進程將在LRU列表中查找尚未查找的緩沖塊,這組緩沖塊的數目相當于參數DB_BLOCK_WRITE_BATCH值的2倍。出現檢查點。43ORACLE的體系結構后臺進程出現超時44LGWR(LogWriter)

將日志緩沖區中的所有記錄項寫到日志文件中。該進程在啟動實例時自動啟動。ORACLE的體系結構后臺進程44LGWR(LogWriter)ORACLE的體系結構45ORACLE的體系結構后臺進程LGWR進行寫操作的情況:用戶進程提交一個事務(Commit)

日志緩沖區達到1/3范圍

DBWR對一個檢查點需要清除緩沖塊出現超時(3秒鐘內未活動,則進行一次寫操作。)45ORACLE的體系結構后臺進程LGWR進行寫操作46ORACLE的體系結構后臺進程檢查點(Checkpoint):在檢查點出現期間,DBWR進程將數據緩沖區中的所有臟緩沖塊寫到數據文件中,LGWR進程將日志緩沖區中的所有記錄項寫到日志文件中,以確保上一個檢查點至今修改過的所有數據塊都被寫到磁盤上。46ORACLE的體系結構后臺進程檢查點(Check47檢查點:預定數目的記錄項被填滿。參數LOG_CHECKPOINT_INTERVAL確定了預定數目。設置指定的秒數。 參數LOG_CHECKPOINT_TIMEOUT確定了間隔秒數。每個日志開關處關閉實例時

DBA手動操作。ORACLE的體系結構后臺進程47檢查點:ORACLE的體系結構后臺進程48CKPT(Checkpointer)

在控制文件中記錄檢查點。參CHECKPOINT_PROCESS確定了檢查點的啟動/不啟動狀態。若CKPT進程不啟動,則該進程的工作將由LGWR進程代勞。(如果數據庫的數據文件過多,這樣操作會降低系統性能。)

oracle9i中已經廢棄了這個參數,在實例啟動時將會自動啟動CKPT進程。如果仍然在參數文件中設置這個參數,將會導致實例啟動失敗。ORACLE的體系結構后臺進程48CKPT(Checkpointer)ORACLE的體系結49ARCH(Archiver)歸檔進程在日志文件組出現切換時,將舊日志文件的內容拷貝到脫機存儲介質上,出現介質失敗時用于恢復數據。

LOG_ARCHIVE_START確定了該進程的啟動/不啟動狀態。ARCH存儲介質ORACLE的體系結構后臺進程49ARCH(Archiver)歸檔進程ARCH存儲介質OR50ARCH(Archiver)LOG_ARCHIVE_DEST當數據庫在歸檔模式下操作時,該參數確定了日志文件的歸檔目標。

LOG_ARCHIVE_FORMAT當數據庫在歸檔模式下操作時,該參數確定了歸檔日志文件的缺省文件名格式。ARCH存儲介質ORACLE的體系結構后臺進程50ARCH(Archiver)ARCH存儲介質ORACLE51ORACLE的體系結構后臺進程SMON(SystemMonitor)系統監視進程負責完成自動實例恢復。該進程在啟動實例時自動啟動。PMON(ProcessMonitor)進程監視進程撤消異常中斷的用戶進程,并釋放該進程已獲得的系統資源或鎖。51ORACLE的體系結構后臺進程SMON(Syst52ORACLE的體系結構后臺進程RECO(Recover)恢復進程在分布式操作的情況下,恢復一個事務的失敗。LCKn(Lock)鎖進程在并行服務器系統間加鎖,最多可加10個鎖,分別為LCK0,LCK1,,LCK9。52ORACLE的體系結構后臺進程RECO(Reco53共享池數據緩沖區日志緩沖區SGA數據文件日志文件參數文件控制文件DBWRARCHCKPTLGWRPMONLCKnRECOSMON存儲介質ServerUserUserUserORACLE的體系結構

總結53共享池數據緩沖區日志緩沖區SGA數據文件日志文件參數文件謝謝謝謝55oracle管理科學數據庫技術培訓1oracle管理科學數據庫技術培訓56oracle數據庫的特點Oracle是oracle公司出品的十分優秀的DBMS。目前,中國電信行業使用的數據庫系統基本上全部是oracle(不是windows下的)。其市場占有率為32.6%。如果實現的是高端企業應用,需要處理的并發數據量很大,同時對數據庫的可靠性、安全性和可擴展性又很高的要求,那么oracle是很好的選擇。2oracle數據庫的特點Oracle是oracle公司出品57oracle數據庫的特點支持大數據庫、多用戶的高性能的事務處理ORACLE遵守數據存取語言、操作系統、用戶接口和通訊協議的工業標準。實施安全性控制和完整性控制支持分布式數據庫和分布處理。分布式系統像集中式數據庫具有一樣的透明性和數據一致性。具有可移植性、可兼容性和連接性。Oracle10g支持網格計算3oracle數據庫的特點支持大數據庫、多用戶的高性能的事務58第一章ORACLE的體系結構Oracle的物理結構Oracle的系統全局區Oracle的進程4第一章ORACLE的體系結構59ORACLE的體系結構

體系結構概述物理結構

數據文件、日志文件、控制文件、參數文件系統全局區(SystemGlobalArea)

共享池、數據緩沖區、日志緩沖區進程

用戶進程、服務器進程、后臺進程5ORACLE的體系結構體系結構概述物理結構60共享池數據緩沖區日志緩沖區SGA數據文件日志文件參數文件控制文件DBWRARCHCKPTLGWRPMONLCKnRECOSMON存儲介質ServerUserUserUserORACLE的體系結構

體系結構圖示6共享池數據緩沖區日志緩沖區SGA數據文件日志文件參數文件控61數據文件日志文件控制文件參數文件ORACLE的體系結構物理結構7數據文件ORACLE的體系結構物理結構62

數據文件(DataFile)是物理存儲ORACLE數據庫數據的文件。其特點如下:每一個數據文件只與一個數據庫相聯系。一個表空間可包含一個或多個數據文件。一個數據文件只能屬于一個表空間ORACLE的體系結構物理結構8數據文件(DataFile)是物理存儲ORACL63

日志文件(LogFile)記錄所有對數據庫數據的修改,以備恢復數據時使用。其特點如下:每一個數據庫至少包含兩個日志文件組。日志文件組以循環方式進行寫操作。每一個日志文件成員對應一個物理文件。ORACLE的體系結構物理結構9日志文件(LogFile)記錄所有對數據庫數據的64

日志開關(LogSwitch)是為實現日志文件組的循環使用而設置的。出現日志開關的情況如下:當一個日志文件組被填滿時關閉數據庫時

DBA手動轉移日志開關ORACLE的體系結構物理結構10日志開關(LogSwitch)是為實現日志文件65日志文件寫操作圖示LogFile1LogFile2Group1Group2Member2.1Member1.1ORACLE的體系結構物理結構11日志文件寫操作圖示LogFile1LogFile66

鏡像日志文件是為防止日志文件的丟失,在不同磁盤上同時維護兩個或多個聯機日志文件的副本。其特點如下:每個日志文件組至少包含兩個日志文件成員。每組的成員數目相同。同組的所有成員同時被修改。同組的成員大小相同,不同組的成員大小可不同。ORACLE的體系結構物理結構12鏡像日志文件是為防止日志文件的丟失,在不同磁盤上67鏡像日志文件圖示Group1Group2LogFile1LogFile2Member2.1Member1.1LogFile3LogFile4Member2.2Member1.2Disk1Disk2ORACLE的體系結構物理結構13鏡像日志文件圖示Group1Group2LogFi68共享池數據緩沖區日志緩沖區SGADBWRARCHCKPTLGWRPMONLCKnRECOSMON存儲介質ServerUserUserUserORACLE的體系結構

體系結構圖示14共享池數據緩沖區日志緩沖區SGADBWRARCHCKPT69

控制文件(ControlFile)是一個較小的二進制文件,用于描述數據庫物理結構。描述信息如下:數據庫建立的日期。數據庫名。數據庫中所有數據文件和日志文件的文件名及路徑。恢復數據庫時所需的同步信息。要點注意:在打開和存取數據庫時都要訪問該文件。鏡像控制文件。記錄控制文件名及路徑的參數為:

CONTROL_FILESORACLE的體系結構物理結構15控制文件(ControlFile)是一個較小的70

參數文件(PFILE)和服務器端參數文件(SPFILE)oracle8i以前的版本都是使用普通文本形式的本地初始化參數文件,initSID.ora。自oracle9i開始使用服務器端參數文件,SPFILE是二進制格式的,默認名為SPFILE<SID>.ORA。盡管能夠打開并編輯器中的內容,但是任何用戶都不應該手工修改其中的內容,否則實例將無法啟動。ORACLE的體系結構物理結構16參數文件(PFILE)和服務器端參數文件(SPF71參數文件的作用:確定存儲結構的大小。設置數據庫的全部缺省值。設置數據庫的范圍。設置數據庫的各種物理屬性。優化數據庫性能。ORACLE的體系結構物理結構17參數文件的作用:ORACLE的體系結構物理結構72創建服務器端初始化參數文件

SPFILE在創建時必須基于一個傳統的文本初始化參數文件,而且必須在啟動實例之前完成創建工作。Sql>createSPFILE=‘D:\ORACLE\…’

FROMPFILE=‘D:\ORACLE\…\TEMPFILE\…’; PFILE子句是必需的,SPFILE子句可以省略,則SPFILE存貯在缺省位置<ORACLE_HOME>\DATABASE\下。ORACLE的體系結構物理結構18創建服務器端初始化參數文件ORACLE的體系結構73ORACLE的體系結構物理結構查看服務器端參數文件

在SQLPLUS中使用SHOWPARAMETERS命令 查詢V$PARAMETER或V$PARAMETER2動態性能視圖,V$PARAMETER2的格式更加簡介。查詢V$SPPARAMETER動態性能視圖導出服務器端參數文件

SQL>CREATEPFILE=‘D:\…’FROMSPFILE=‘…’19ORACLE的體系結構物理結構查看服務器端參數文74ORACLE的體系結構物理結構修改服務器端參數文件

在9i中直接手工修改本地參數化文件是沒用的,不會改變數據庫的設置。

利用ALTERSYSTEMSETparameter=value語句可以在數據庫運行時修改初始化參數的值。 在SET子句中可以使用SCOPE選項來設置影響范圍,所謂影響范圍就是ALTERSYSTEM語句對參數的修改是僅對當前實例有效(記錄在內存中),還是永久有效(記錄在SPFILE中)。

20ORACLE的體系結構物理結構修改服務器端參數文75ORACLE的體系結構物理結構SCOPE選項有三種選擇:SCOPE=SPFILE對參數的修改僅記錄在SPFILE,改選項同時適用動態初始化參數和靜態初始化參數。修改后的參數在下次啟動后生效SCOPE=MEMORY對參數的修改僅記錄在內存中,更改立即生效,僅對本次實例有效。對靜態參數,不能使用這個選項值。SCOPE=BOTH對參數的修改同時記錄在內存和SPFILE中,立即生效,下次啟動后使用修改后的參數。對于靜態參數,不能使用這個選項。21ORACLE的體系結構物理結構SCOPE選項有三76ORACLE的體系結構物理結構主要的初始化參數

全局數據庫名和SID

DB_NAME本地數據庫標識,在只有一個實例的情況下,本地數據庫標識和實例標識SID相同。 DB_DOMAIN網絡域名 則全局名GLOBAL_NAME為DB_NAME.DB_DOMAIN

控制文件參數

control_files='d:\oracle\oradata\test\CONTROL01.CTL','d:\oracle\oradata\test\CONTROL02.CTL','d:\oracle\oradata\test\CONTROL03.CTL'22ORACLE的體系結構物理結構主要的初始化參數77ORACLE的體系結構物理結構 數據塊參數

db_block_size,數據庫建立后不能修改。一般是操作系統塊的整數倍。對I/O密集的操作,使用雙倍大小的數據塊能提高40%左右的I/O性能,但是所這塊的增大,數據庫對內存SGA的需求也增大,會對系統性能產生負面影響

db_cache_size指定SGA區數據庫告訴緩沖區的大小。Oracle8i中是使用db_block_buffers來決定的。 撤銷空間的管理方式undo_management='AUTO‘\’MANUAL’undo_tablespace='UNDOTBS1'23ORACLE的體系結構物理結構 數據塊參數78共享池數據緩沖區日志緩沖區SGA數據文件日志文件參數文件控制文件DBWRARCHCKPTLGWRPMONLCKnRECOSMON存儲介質ServerUserUserUserORACLE的體系結構

體系結構圖示24共享池數據緩沖區日志緩沖區SGA數據文件日志文件參數文件79共享池數據庫緩沖區日志緩沖區ORACLE的體系結構系統全局區25共享池ORACLE的體系結構80實例(INSTANCE)是存取和控制數據庫的軟件機制,它由系統全局區(SystemGlobalArea,簡稱SGA)和后臺進程組成。ORACLE的體系結構系統全局區26實例(INSTANCE)ORACLE的體系結構81SGA是ORACLE系統為實例分配的一組共享緩沖存儲區,用于存放數據庫數據和控制信息,以實現對數據庫數據的管理和操作。ORACLE的體系結構系統全局區27SGA是ORACLE系統為實例分配的一組共享緩沖存儲區,82ORACLE的體系結構系統全局區SGA區的初始化參數

DB_CACHE_SIZE數據庫緩存的大小

LOG_BUFFER重做日志緩存的大小

SHARED_POOL_SIZE共享池的大小

LARGE_POOL_SIZE大型池的大小為了優化系統性能,SGA區最好全部位于物理內存中。如果超過了系統物理內存的大小,則不得不使用虛擬內存來補償,部分SGA區必須由操作系統進行換頁操作,將在很大程度上降低系統性能。共享池數據緩沖區日志緩沖區SGA28ORACLE的體系結構系統全局區SGA區的初始化參83共享池(SharedPool)由共享SQL區和數據字典區組成。參數SHARED_POOL_SIZE確定共享池的大小。共享SQL區包括

SQL或PL/SQL語句的文本

SQL或PL/SQL語句的語法分析形式

SQL或PL/SQL語句的執行方案數據字典區用于存放數據字典信息行。ORACLE的體系結構系統全局區29共享池(SharedPool)由共享SQL區和數據字典84數據緩沖存儲區(DatabaseBufferCache)用于存儲從數據文件中讀的數據的備份。數據緩沖區數據文件DB_BLOCK_SIZE

確定數據塊的大小,一般為2K或4K,對于大數據塊的數據庫,此參數值為物理塊的倍數。DB_CACHE_SIZE(oracle9i)DB_BLOCK_BUFFERS(oracle8i)確定數據塊的數目。ORACLE的體系結構系統全局區30數據緩沖存儲區(DatabaseBufferCach85數據緩沖存儲區分為

臟列表包括被修改過但尚未寫到數據文件的緩沖塊。

LRU(LeastRecentlyUsed)列表

包括空閑緩沖塊、正在存取的緩沖塊、已被修改但尚未移到臟列表的緩沖塊。ORACLE的體系結構系統全局區31數據緩沖存儲區分為ORACLE的體系結構系統全局86日志緩沖存儲區(LogBuffer)以記錄項的形式備份數據庫緩沖區中被修改的緩沖塊,這些記錄將被寫到日志文件中。LOG_BUFFER

確定日志緩沖區的大小。日志緩沖區日志文件ORACLE的體系結構系統全局區32日志緩沖存儲區(LogBuffer)以記錄項的形式備份87共享池數據緩沖區日志緩沖區SGA數據文件日志文件參數文件控制文件DBWRARCHCKPTLGWRPMONLCKnRECOSMON存儲介質ServerUserUserUserORACLE的體系結構

體系結構圖示33共享池數據緩沖區日志緩沖區SGA數據文件日志文件參數文件88用戶進程服務器進程后臺進程ORACLE的體系結構進程34用戶進程ORACLE的體系結構進程89

ORACLE實例分為單進程實例和多進程實例兩種。

SINGLE_PROCESS單進程/多進程實例的轉換。ORACLE的體系結構進程35ORACLE實例分為單進程實例和多進程實90單進程/單用戶一個進程執行全部ORACLE代碼。SGAORACLEServer數據庫應用ORACLE的體系結構進程36單進程/單用戶SGAORACLEServerO91多進程/多用戶使用多個進程執行ORACLE的不同代碼,對于每一個連接的用戶都有一個進程。SGA服務器進程用戶進程后臺進程ORACLE的體系結構進程37多進程/多用戶SGA服務器進程用戶進程后臺進程92用戶進程當用戶運行一個應用程序時,就建立一個用戶進程。ORACLE的體系結構用戶進程38用戶進程ORACLE的體系結構用戶進程93服務器進程處理用戶進程的請求。處理過程分析SQL命令并生成執行方案。從數據緩沖存儲區中讀取數據。將執行結果返回給用戶。ORACLE的體系結構服務器進程39服務器進程ORACLE的體系結構服務器進程94后臺進程為所有數據庫用戶異步完成各種任務。主要的后臺進程有

DBWR數據庫寫進程

LGWR日志寫進程

CKPT檢查點寫進程

SMON系統監控進程

PMON進程監控進程

ARCH歸檔進程

RECO恢復進程

LCKn封鎖進程ORACLE的體系結構后臺進程40后臺進程主要的后臺進程有ORACLE的體系結構后95ORACLE的體系結構后臺進程DBWR(DataBaseWriter)

將數據緩沖區中所有修改過的緩沖塊數據寫到數據文件中,并使用LRU(Least-Recently-Used)算法來保持緩沖區中的數據塊為最近經常使用的,以減少I/O次數。該進程在啟動實例時自動啟動41ORACLE的體系結構后臺進程DBWR(Data96DBWR進行寫操作的情況:臟列表達到最低限制。相當于參數DB_BLOCK_WRITE_BATCH值的一半。一個進程在LRU列表中掃描指定數目的緩沖塊,未找到空閑緩沖塊。參數DB_BLOCK_MAX_SCAN_CNT確定掃描數目。ORACLE的體系結構后臺進程42DBWR進行寫操作的情況:ORACLE的體系結構97ORACLE的體系結構后臺進程出現超時3秒鐘內該進程未活動,則該進程將在LRU列表中查找尚未查找的緩沖塊,這組緩沖塊的數目相當于參數DB_BLOCK_WRI

溫馨提示

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

評論

0/150

提交評論