資源描述:
《oracle從入門到精通_經(jīng)典》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、第一章Oracle入門課程地位.Net&C#SQLServerXMLSPMASP.NET&WebServiceOracleUMLSPR:ComputerBaseHTML&JavaScriptSQLServerBaseOOP&JavaBaseCSTBJSP/ServletEJB&WebServiceWinFormsStruts&JSFTesting&SQALinux2課程目標(biāo)理解Oracle數(shù)據(jù)庫體系結(jié)構(gòu)熟練掌握SQL命令和SQL函數(shù)使用Oracle的各種數(shù)據(jù)庫對象使用PL/SQL編寫存儲(chǔ)過程掌握基本的數(shù)據(jù)庫配置和管理3目標(biāo)了解Oracl
2、e體系結(jié)構(gòu)的各種組件掌握Oracle中的基本用戶管理了解Oracle的工具了解Oracle的安裝和卸載4Oracle數(shù)據(jù)庫簡介2-1對象關(guān)系型的數(shù)據(jù)庫管理系統(tǒng)(ORDBMS)在管理信息系統(tǒng)、企業(yè)數(shù)據(jù)處理、因特網(wǎng)及電子商務(wù)等領(lǐng)域使用非常廣泛在數(shù)據(jù)安全性與數(shù)據(jù)完整性控制方面性能優(yōu)越跨操作系統(tǒng)、跨硬件平臺(tái)的數(shù)據(jù)互操作能力Oracle數(shù)據(jù)庫的主要特點(diǎn)支持多用戶、大事務(wù)量的事務(wù)處理數(shù)據(jù)安全性和完整性控制支持分布式數(shù)據(jù)處理可移植性5Oracle數(shù)據(jù)庫簡介2-2Oracle數(shù)據(jù)庫基于客戶端/服務(wù)器技術(shù)客戶端應(yīng)用程序通過向服務(wù)器請求并接收信息的方式與數(shù)
3、據(jù)庫進(jìn)行交互。它充當(dāng)用戶與數(shù)據(jù)庫之間的接口請求響應(yīng)數(shù)據(jù)庫服務(wù)器對數(shù)據(jù)庫表進(jìn)行最佳管理,處理多個(gè)客戶端對同一數(shù)據(jù)的并發(fā)訪問。全面地保持?jǐn)?shù)據(jù)完整性,并控制數(shù)據(jù)庫訪問權(quán)限等安全性需求網(wǎng)絡(luò)服務(wù)器6Oracle9i體系結(jié)構(gòu)Oracle服務(wù)器Oracle數(shù)據(jù)庫Oracle實(shí)例Oracle數(shù)據(jù)庫是一個(gè)數(shù)據(jù)的集合,該集合被視為一個(gè)邏輯單元管理數(shù)據(jù)庫的后臺(tái)進(jìn)程和內(nèi)存結(jié)構(gòu)的集合稱為Oracle實(shí)例數(shù)據(jù)庫的體系結(jié)構(gòu)是指數(shù)據(jù)庫的組成、工作過程與原理,以及數(shù)據(jù)在數(shù)據(jù)庫中的組織與管理機(jī)制Oracle服務(wù)器提供開放、全面和綜合的信息管理,它由Oracle數(shù)據(jù)庫和Or
4、acle實(shí)例組成7Oracle主要組件實(shí)例內(nèi)存結(jié)構(gòu)后臺(tái)進(jìn)程PMONSMONDBWRLGWRCKPT其他數(shù)據(jù)庫數(shù)據(jù)文件數(shù)據(jù)文件數(shù)據(jù)文件控制文件控制文件日志文件日志文件參數(shù)文件歸檔日志文件口令文件SGA用戶進(jìn)程服務(wù)器進(jìn)程PGA共享池?cái)?shù)據(jù)緩沖區(qū)日志緩沖區(qū)8Oracle實(shí)例Oracle實(shí)例是后臺(tái)進(jìn)程和內(nèi)存結(jié)構(gòu)的集合Oracle實(shí)例系統(tǒng)全局區(qū)后臺(tái)進(jìn)程分配啟動(dòng)9Oracle數(shù)據(jù)庫Oracle數(shù)據(jù)庫由操作系統(tǒng)文件組成,這些文件為數(shù)據(jù)庫信息提供實(shí)際物理存儲(chǔ)區(qū)Oracle數(shù)據(jù)庫包括邏輯結(jié)構(gòu)和物理結(jié)構(gòu)物理結(jié)構(gòu)邏輯結(jié)構(gòu)物理結(jié)構(gòu)包含數(shù)據(jù)庫中的一組操作系統(tǒng)文件。
5、邏輯結(jié)構(gòu)指數(shù)據(jù)庫創(chuàng)建之后形成的邏輯概念之間的關(guān)系Oracle數(shù)據(jù)庫10會(huì)話會(huì)話是用戶與Oracle服務(wù)器的單個(gè)連接當(dāng)用戶與服務(wù)器建立連接時(shí)創(chuàng)建會(huì)話當(dāng)用戶與服務(wù)器斷開連接時(shí)關(guān)閉會(huì)話啟動(dòng)Oracle實(shí)例使用SQL*Plus連接至數(shù)據(jù)庫創(chuàng)建用戶進(jìn)程創(chuàng)建服務(wù)器進(jìn)程提交SQL查詢11Oracle實(shí)例內(nèi)存結(jié)構(gòu)系統(tǒng)全局區(qū)(SGA)程序全局區(qū)(PGA)Oracle實(shí)例啟動(dòng)時(shí)分配系統(tǒng)全局區(qū)當(dāng)服務(wù)器進(jìn)程啟動(dòng)時(shí)分配程序全局區(qū)Oracle的內(nèi)存結(jié)構(gòu)包含以下兩個(gè)內(nèi)存區(qū):內(nèi)存區(qū)12系統(tǒng)全局區(qū)2-1數(shù)據(jù)庫信息存儲(chǔ)于SGA,由多個(gè)數(shù)據(jù)庫進(jìn)程共享共享池?cái)?shù)據(jù)緩沖區(qū)日志緩沖
6、區(qū)SGA的內(nèi)存結(jié)構(gòu)13系統(tǒng)全局區(qū)2-2共享池共享池是對SQL、PL/SQL程序進(jìn)行語法分析、編譯、執(zhí)行的內(nèi)存區(qū)域共享池由庫緩存和數(shù)據(jù)字典緩存組成。共享池的大小直接影響數(shù)據(jù)庫的性能。數(shù)據(jù)緩沖區(qū)用于存儲(chǔ)從磁盤數(shù)據(jù)文件中讀入的數(shù)據(jù),所有用戶共享。服務(wù)器進(jìn)程將讀入的數(shù)據(jù)保存在數(shù)據(jù)緩沖區(qū)中,當(dāng)后續(xù)的請求需要這些數(shù)據(jù)時(shí)可以在內(nèi)存中找到,不需要再從磁盤讀取,提高了讀取速度。數(shù)據(jù)緩沖區(qū)的大小對數(shù)據(jù)庫的讀取速度有直接的影響。日志緩沖區(qū)日志記錄數(shù)據(jù)庫的所有修改信息,日志信息首先產(chǎn)生于日志緩沖區(qū)。當(dāng)日志緩沖區(qū)的日志數(shù)據(jù)達(dá)到一定數(shù)量時(shí),由后臺(tái)進(jìn)程將日志數(shù)據(jù)寫入
7、日志文件中。相對來說,日志緩沖區(qū)對數(shù)據(jù)庫的性能影響較小。14程序全局區(qū)程序全局區(qū)(PGA)包含單個(gè)服務(wù)器進(jìn)程所需的數(shù)據(jù)和控制信息PGA是在用戶進(jìn)程連接到數(shù)據(jù)庫并創(chuàng)建一個(gè)會(huì)話時(shí)自動(dòng)分配的,保存每個(gè)與Oracle數(shù)據(jù)庫連接的用戶進(jìn)程所需的信息PGA為非共享區(qū),只能單個(gè)進(jìn)程使用,當(dāng)一個(gè)用戶會(huì)話結(jié)束,PGA釋放15Oracle實(shí)例進(jìn)程結(jié)構(gòu)Oracle實(shí)例有幾種不同類型的進(jìn)程,它們是:實(shí)例進(jìn)程用戶進(jìn)程服務(wù)器進(jìn)程后臺(tái)進(jìn)程用戶進(jìn)程是一個(gè)需要與Oracle服務(wù)器進(jìn)行交互的程序。當(dāng)用戶運(yùn)行一個(gè)應(yīng)用程序準(zhǔn)備向數(shù)據(jù)庫服務(wù)器發(fā)送請求時(shí),即創(chuàng)建了用戶進(jìn)程服務(wù)器進(jìn)
8、程用于處理連接到該實(shí)例的用戶進(jìn)程的請求。當(dāng)用戶連接至Oracle數(shù)據(jù)庫實(shí)例創(chuàng)建會(huì)話時(shí),即產(chǎn)生服務(wù)器進(jìn)程后臺(tái)進(jìn)程是Oracle數(shù)據(jù)庫為了保持最佳系統(tǒng)性能和協(xié)調(diào)多個(gè)用戶請求而設(shè)置的。Oracle實(shí)例啟動(dòng)時(shí)即創(chuàng)建