第1章-Oracle-11g基礎(chǔ)入門(理論)課件_第1頁
第1章-Oracle-11g基礎(chǔ)入門(理論)課件_第2頁
第1章-Oracle-11g基礎(chǔ)入門(理論)課件_第3頁
第1章-Oracle-11g基礎(chǔ)入門(理論)課件_第4頁
第1章-Oracle-11g基礎(chǔ)入門(理論)課件_第5頁
已閱讀5頁,還剩51頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第一章Oracle11g基礎(chǔ)入門第一章Oracle11g基礎(chǔ)入門本章內(nèi)容Oracle11g簡介Oracle11g體系結(jié)構(gòu)Oracle11g的安裝Oracle11g數(shù)據(jù)庫實例的創(chuàng)建Oracle11g實例的啟動與關(guān)閉Oracle網(wǎng)絡(luò)連接配置Oracle11g管理工具卸載Oracle11g本章內(nèi)容Oracle11g簡介本章目標理解Oracle11g體系結(jié)構(gòu)掌握Oracle11g數(shù)據(jù)庫實例的創(chuàng)建掌握Oracle11g實例的啟動與關(guān)閉掌握Oracle網(wǎng)絡(luò)連接配置本章目標理解Oracle11g體系結(jié)構(gòu)1.Oracle11g簡介Oracle數(shù)據(jù)庫系統(tǒng)是美國Oracle公司(甲骨文)提供的以分布式數(shù)據(jù)庫為核心的一組軟件產(chǎn)品Oracle數(shù)據(jù)庫系統(tǒng)主要包含以下4個特點支持大數(shù)據(jù)庫、多用戶、高性能的事務(wù)處理提供了基于角色(ROLE)分工的安全保密管理提供了新的分布式數(shù)據(jù)庫能力具有可移植性、可兼容性和可連接性1.1Oracle數(shù)據(jù)庫系統(tǒng)的特點1.Oracle11g簡介Oracle數(shù)據(jù)庫系統(tǒng)是美國1978年,Oracle1誕生了,它是使用匯編語言開發(fā)的,但它的出現(xiàn)并沒有引起太多的關(guān)注1982年,Oracle公司推出了Oracle3,這是第一個能夠運行在大型和小型機上的關(guān)系型數(shù)據(jù)庫1997年,Oracle公司又推出了基于Java語言的Oracle82001年6月,Oracle公司發(fā)布了Oracle9i2007年7月12日,甲骨文公司在美國紐約宣布推出Oracle11g,Oracle11g中的“g”代表“網(wǎng)格”1.2Oracle發(fā)展歷史網(wǎng)格計算可以將分布在世界各地的計算機連接在一起,并且將各地的計算機資源通過高速互聯(lián)網(wǎng)組成充分共享的資源集成。通過合理的調(diào)度,不同的計算環(huán)境被綜合利用并共享

1978年,Oracle1誕生了,它是使用匯編語言開發(fā)的,SQLServer只能在Windows上運行,沒有絲毫的開放性;Oracle能在所有主流平臺上運行(包括Windows)SQLServer很難處理日益增多的用戶數(shù)和數(shù)據(jù)卷;Oracle平行服務(wù)器通過使一組結(jié)點共享同一簇中的工作來擴展WindowNT的能力,提供高可用性和高伸縮性的簇的解決方案SQLServer沒有獲得任何安全證書,Oracle獲得了最高認證級別的ISO標準認證SQLServer在多用戶時性能不佳。Oracle中引入了共享SQL和多線索服務(wù)器體系結(jié)構(gòu),從而減少了Oracle的資源占用,并增強了Oracle的并發(fā)處理能力1.3Oracle與SQLServer比較為什么在學(xué)習(xí)了SQLServer數(shù)據(jù)庫之后還需要學(xué)習(xí)Oracle數(shù)據(jù)庫?SQLServer只能在Windows上運行,沒有絲毫的開2.Oracle11g體系結(jié)構(gòu)2.1進程結(jié)構(gòu)用戶進程用戶進程是在客戶機內(nèi)存上運行的程序,它向服務(wù)器進程發(fā)出數(shù)據(jù)處理請求當客戶端運行一個應(yīng)用程序,準備向數(shù)據(jù)庫服務(wù)器發(fā)送請求時,將會創(chuàng)建用戶進程服務(wù)器進程為了給客戶端的用戶進程提供服務(wù),Oracle會在客戶端成功連接Oracle數(shù)據(jù)庫時,在服務(wù)器端創(chuàng)建相應(yīng)的服務(wù)器進程客戶端的進程與服務(wù)器端的進程是一一對應(yīng)的用戶進程必須通過服務(wù)器進程才能訪問數(shù)據(jù)庫后臺進程在同一時刻,Oracle可以處理上百個并發(fā)的請求,進行復(fù)雜的數(shù)據(jù)操作,為了提高系統(tǒng)性能并協(xié)調(diào)多個用戶,Oracle使用一些附加的線程,稱為后臺進程后臺進程存在于操作系統(tǒng)中,在Oracle實例啟動時自動啟動2.Oracle11g體系結(jié)構(gòu)2.1進程結(jié)構(gòu)2.1進程結(jié)構(gòu)服務(wù)器進程任務(wù)解析并執(zhí)行用戶所提交的SQL語句搜索SGA區(qū)的數(shù)據(jù)庫緩存,決定是否讀取數(shù)據(jù)文件,如果數(shù)據(jù)塊不在SGA區(qū)的數(shù)據(jù)庫緩存中,則將其從數(shù)據(jù)文件中讀入將查詢或執(zhí)行后形成的數(shù)據(jù)返回給用戶后臺進程任務(wù)在內(nèi)存和外存之間進行I/O操作監(jiān)視各個進程的狀態(tài)協(xié)調(diào)各個進程的任務(wù)維護系統(tǒng)的性能保證系統(tǒng)的可靠性能2.1進程結(jié)構(gòu)服務(wù)器進程任務(wù)2.2內(nèi)存結(jié)構(gòu)SGA(SystemGlobalArea,系統(tǒng)全局區(qū))SGA是例程內(nèi)存結(jié)構(gòu)的主要組成部分,每個Oracle實例都只有一個SGA當多個用戶同時連接到一個例程時,所有的用戶進程、服務(wù)器進程都共享SGA它是不同用戶進程與服務(wù)器進程進行通信的中心可以將SGA看作是Oracle的心臟。當啟動Oracle實例時,即分配一個SGA;當終止Oracle實例時,即釋放SGA占用的內(nèi)存用戶進程用戶進程服務(wù)器進程服務(wù)器進程SGA2.2內(nèi)存結(jié)構(gòu)SGA(SystemGlobalArea內(nèi)存結(jié)構(gòu)SGA(SystemGlobalArea,系統(tǒng)全局區(qū))數(shù)據(jù)緩沖區(qū)(DataBufferCache)用于存儲最近從數(shù)據(jù)庫中讀取出來的數(shù)據(jù)塊用戶進程查看的數(shù)據(jù)首先駐留在數(shù)據(jù)緩沖區(qū)中,如果用戶進程需要的信息不在該區(qū)內(nèi),才訪問物理磁盤驅(qū)動器讀取數(shù)據(jù)塊,然后放入該區(qū)供其他用戶進程或服務(wù)器進程使用重做日志緩沖區(qū)(RedoLogBuffer)當執(zhí)行INSERT、UPDAE、DELETE等操作時,Oracle都會為這些操作生成重做記錄,以便在可能出現(xiàn)的數(shù)據(jù)庫恢復(fù)過程中用于回滾事務(wù)但是為了加快訪問速度和工作效率,重做記錄并不直接寫入重做日志文件中,而是首先存入SGA的重做日志緩沖區(qū)內(nèi),當重做日志緩沖區(qū)中的重做記錄達到一定數(shù)量或到達某個時間點時,再分批寫入重做日志文件中SQL共享池(SharedSQLPool)SQL共享池是程序的高速緩沖區(qū),存放所有通過SQL語法分析并準備執(zhí)行的SQL語句內(nèi)存結(jié)構(gòu)SGA(SystemGlobalArea,系統(tǒng)全內(nèi)存結(jié)構(gòu)程序全局區(qū)(ProgramGlobalArea,PGA)當用戶進程連接到Oracle實例時,就會創(chuàng)建一個對應(yīng)的會話,該會話使用一個服務(wù)器進程來完成客戶端與Oracle實例之間的通信每個服務(wù)器進程都有一個自己的PGA。PGA由Oracle為服務(wù)器進程分配,專門作為當前用戶會話的內(nèi)存區(qū)這個內(nèi)存區(qū)是非共享的,只有服務(wù)器進程本身才能訪問它自己的PGA區(qū)。而SGA區(qū)則是所有服務(wù)器進程都能共享、可寫的內(nèi)存區(qū)內(nèi)存結(jié)構(gòu)程序全局區(qū)(ProgramGlobalArea,2.3邏輯結(jié)構(gòu)Oracle數(shù)據(jù)庫數(shù)據(jù)段數(shù)據(jù)段臨時段回滾段數(shù)據(jù)區(qū)間數(shù)據(jù)區(qū)間數(shù)據(jù)塊數(shù)據(jù)塊……數(shù)據(jù)庫表空間邏輯對象數(shù)據(jù)段數(shù)據(jù)區(qū)間數(shù)據(jù)塊表空間表空間表空間視圖表索引索引段數(shù)據(jù)塊(DataBlock)數(shù)據(jù)塊是最小的數(shù)據(jù)管理單位,即Oracle中所有的I/O操作都以塊為單位。數(shù)據(jù)塊的大小是操作系統(tǒng)塊大小的整數(shù)倍,常見大小為2KB或4KB數(shù)據(jù)區(qū)間(DataExtent)數(shù)據(jù)區(qū)間由物理上連續(xù)存放的塊所構(gòu)成,它是Oracle存儲分配的最小單位,一個或多個塊組成一個數(shù)據(jù)區(qū)間數(shù)據(jù)段(DataSegment)若干個數(shù)據(jù)區(qū)間構(gòu)成數(shù)據(jù)段表空間(TableSpace)為了提高數(shù)據(jù)庫服務(wù)器管理和運行的效率,Oracle11g使用“表空間”這個虛擬的概念來管理邏輯對象,用戶可以將不同性質(zhì)的邏輯對象存放在不同的表空間下在Windows操作系統(tǒng)中,使用文件夾來分類管理各種文件,表空間相當于Oracle數(shù)據(jù)庫的文件夾。每個表空間由一個或多個數(shù)據(jù)文件組成,一個數(shù)據(jù)文件只能與一個表空間相聯(lián)系名稱主要作用EXAMPLE實例表空間,存放實例信息SYSAUXSYSTEM表空間的輔助空間,用以減少SYSTEM表空間的負荷SYSTEM存儲數(shù)據(jù)字典,包括表、視圖、存儲過程的定義等TEMP存儲SQL語句處理的表和索引的信息UNDOTBS1回滾表空間,存放數(shù)據(jù)庫恢復(fù)信息USERS用戶表空間,存放用戶私有信息Oracle數(shù)據(jù)庫服務(wù)器上的默認表空間

數(shù)據(jù)庫相當于一個柜子,柜子中的抽屜相當于表空間,抽屜中的文件夾相當于數(shù)據(jù)文件,文件夾中的紙相當于表,寫在紙上的信息相當于數(shù)據(jù)。2.3邏輯結(jié)構(gòu)Oracle數(shù)據(jù)庫數(shù)據(jù)段數(shù)據(jù)段臨時段回滾段數(shù)物理塊

物理塊是操作系統(tǒng)分配的基本存儲單位,邏輯結(jié)構(gòu)中的數(shù)據(jù)塊由若干個物理塊構(gòu)成物理文件每個物理文件由苦干個物理塊所組成,包括數(shù)據(jù)文件、控制文件和日志文件數(shù)據(jù)文件數(shù)據(jù)文件是實際存儲插入到數(shù)據(jù)庫表中的實際數(shù)據(jù)的操作系統(tǒng)文件數(shù)據(jù)文件的擴展名為“*.dbf”重做日志文件Oracle使用重做日志文件在故障發(fā)生之后重現(xiàn)當時的數(shù)據(jù)庫操作,便于數(shù)據(jù)庫的恢復(fù)重做日志文件的擴展名為“*.log”控制文件控制文件為二進制文件,它存儲了數(shù)據(jù)庫的名稱,數(shù)據(jù)文件和重做日志文件的名稱、位置、聯(lián)機/脫機狀態(tài)和大小等信息只有控制文件正常,才能“裝載”、“打開”數(shù)據(jù)庫,控制文件的擴展名為“*.ctl”

2.4物理結(jié)構(gòu)控制文件Oracle數(shù)據(jù)庫控制文件物理塊物理塊物理塊數(shù)據(jù)庫物理文件物理塊日志文件數(shù)據(jù)文件數(shù)據(jù)文件重做日志文件物理塊2.4物理結(jié)構(gòu)控制文件Oracle控制文件物理塊物Oracle實例Oracle實例是后臺進程和內(nèi)存結(jié)構(gòu)的集合。作為Oracle數(shù)據(jù)庫與應(yīng)用程序的接口Oracle實例為應(yīng)用程序提供對數(shù)據(jù)庫中數(shù)據(jù)的管理和維護功能

Oracle數(shù)據(jù)庫Oracle數(shù)據(jù)庫由操作系統(tǒng)文件組成,這些文件也稱為數(shù)據(jù)庫文件,為數(shù)據(jù)庫信息提供實際的物理存儲區(qū)

Oracle數(shù)據(jù)庫最終由Oracle實例負責(zé)完成對數(shù)據(jù)庫中全部數(shù)據(jù)的管理工作

Oracle服務(wù)器Oracle服務(wù)器一般指數(shù)據(jù)庫各軟件部件(如SQL*Plus)、Oracle實例及Oracle數(shù)據(jù)庫3個主要部分,它由安裝在服務(wù)器上的所有軟件及啟動成功后的實例組成

2.5總體結(jié)構(gòu)數(shù)據(jù)庫就像是一個倉庫,存儲了各類貨物;而實例就像出入倉庫的搬運工,負責(zé)將貨物搬出、搬入倉庫Oracle實例2.5總體結(jié)構(gòu)數(shù)據(jù)庫就像是一個倉庫,存儲了3.Oracle11g的安裝如果客戶端需要遠程訪問某個Oracle數(shù)據(jù)庫服務(wù)器,則客戶端請求的遠程Oracle數(shù)據(jù)庫名稱是全局數(shù)據(jù)庫名還是SID?按以上步驟成功安裝Oracle11g后,會在作為Oracle服務(wù)器的計算機中創(chuàng)建首個名為scce的Oracle數(shù)據(jù)庫實例。在一臺計算機中能否創(chuàng)建多個Oracle數(shù)據(jù)庫實例?3.Oracle11g的安裝如果客戶端需要遠程訪問某個4.Oracle11g數(shù)據(jù)庫實例的創(chuàng)建4.Oracle11g數(shù)據(jù)庫實例的創(chuàng)建Oracle11g數(shù)據(jù)庫實例的創(chuàng)建新建一個數(shù)據(jù)庫時,Oracle將默認創(chuàng)建幾個用戶SYS用戶SYS用戶是Oracle中的超級用戶,主要用于維護系統(tǒng)信息和管理實例,數(shù)據(jù)庫中數(shù)據(jù)字典的所有表和視圖都存儲在SYS模式中SYSTEM用戶SYSTEM用戶是Oracle中默認的管理員,它擁有DBA權(quán)限。該用戶擁有Oracle管理工具使用的內(nèi)部表和視圖,通常通過SYSTEM用戶管理Oracle數(shù)據(jù)庫的用戶、權(quán)限和存儲等SCOTT用戶SCOTT是Oracle數(shù)據(jù)庫的一個示范賬號。SCOTT用戶模式包含4張示范表,SCOTT用戶的默認口令為tiger對于日常的管理任務(wù),建議使用SYSTEM用戶登錄Oracle數(shù)據(jù)庫服務(wù)器。如果需要執(zhí)行備份、恢復(fù)、更改數(shù)據(jù)庫的任務(wù),就必須以SYS用戶登錄Oracle數(shù)據(jù)庫服務(wù)器Oracle11g數(shù)據(jù)庫實例的創(chuàng)建新建一個數(shù)據(jù)庫時,Ora5.Oracle11g實例的啟動與關(guān)閉Windows操作系統(tǒng)下的Oracle服務(wù)以后臺服務(wù)進程的方式進行管理

OracleOraDb11g_homeTNSListener服務(wù)Oracle服務(wù)器的監(jiān)聽程序OracleServiceSIDOracle的核心服務(wù),要啟動Oracle實例,必須啟動該服務(wù)OracleJobSchedulerSID任務(wù)調(diào)度服務(wù),負責(zé)對用戶創(chuàng)建的作業(yè)按預(yù)先設(shè)置的時間周期性地進行調(diào)度執(zhí)行,從而實現(xiàn)Oracle服務(wù)器的自動管理功能OracleDBConsoleSID負責(zé)在Windows平臺下啟動Oracle企業(yè)管理器。Oracle11g企業(yè)管理器是一個功能完善的Oracle數(shù)據(jù)庫管理工具,可以管理本地數(shù)據(jù)庫環(huán)境和網(wǎng)格環(huán)境5.Oracle11g實例的啟動與關(guān)閉Windows操作6.1網(wǎng)絡(luò)連接配置概述在Oracle產(chǎn)品安裝完成后,客戶端為了與數(shù)據(jù)庫服務(wù)器連接實現(xiàn)數(shù)據(jù)訪問,必須進行網(wǎng)絡(luò)連接配置Oracle網(wǎng)絡(luò)配置分為:服務(wù)器端配置和客戶端配置。配置的結(jié)果由配置文件來保存配置文件監(jiān)聽程序的配置文件(listener.ora)服務(wù)器端配置的目的就是配置該文件,該文件存儲于服務(wù)器端本地網(wǎng)格服務(wù)名的配置文件(tnsnames.ora)當采用本地命名方法時,就必須在客戶端保存、配置tnsnames.ora文件,客戶端配置的目的就是配置該文件命名方法配置文件(sqlnet.ora)如果需要配置命名方法,則還要在客戶端和服務(wù)器端配置一致的文件Oracle11g默認采用本地命名方法6.Oracle網(wǎng)絡(luò)連接配置端口號主機名監(jiān)聽名稱使用的網(wǎng)絡(luò)協(xié)議網(wǎng)絡(luò)服務(wù)名主機名端口號全局數(shù)據(jù)庫名6.1網(wǎng)絡(luò)連接配置概述6.Oracle網(wǎng)絡(luò)連接配置端口號6.2連接描述符與網(wǎng)絡(luò)服務(wù)名Oracle服務(wù)器使用連接描述符作為客戶端訪問數(shù)據(jù)庫服務(wù)器的路徑,即用于指定數(shù)據(jù)庫的位置和數(shù)據(jù)庫服務(wù)名等信息網(wǎng)絡(luò)服務(wù)名是數(shù)據(jù)庫服務(wù)器在客戶端的名稱,即邏輯名或者數(shù)據(jù)庫的別名。它用于幫助客戶端準確地連接到指定的Oracle數(shù)據(jù)庫服務(wù)器網(wǎng)絡(luò)服務(wù)名被存儲在客戶端的監(jiān)聽程序配置文件“l(fā)istener.ora”中SCCE=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=hello)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=scce.wuhan)))連接描述符網(wǎng)絡(luò)服務(wù)名一個數(shù)據(jù)庫可以有多個網(wǎng)絡(luò)服務(wù)名6.2連接描述符與網(wǎng)絡(luò)服務(wù)名Oracle服務(wù)器使用連接描述6.3監(jiān)聽程序監(jiān)聽程序是運行在服務(wù)器端的一個單獨的服務(wù)進程,在Windows服務(wù)中對應(yīng)于OracleOraDb11g_homeTNSListener服務(wù)監(jiān)聽程序通過指定的協(xié)議監(jiān)聽端口號,監(jiān)聽網(wǎng)絡(luò)上的客戶端對服務(wù)器的連接請求,并管理客戶端與服務(wù)器之間的網(wǎng)絡(luò)通信量每次客戶端請求與服務(wù)器進行網(wǎng)絡(luò)會話時,服務(wù)器的監(jiān)聽程序就會監(jiān)聽到該請求,并作為客戶端請求的中介,再將請求傳送給Oracle服務(wù)器監(jiān)聽程序由存儲在服務(wù)器端的監(jiān)聽程序配置文件“l(fā)istener.ora”來集中控制6.3監(jiān)聽程序監(jiān)聽程序是運行在服務(wù)器端的一個單獨的服務(wù)進程6.4Oracle網(wǎng)絡(luò)連接服務(wù)器端配置添加新的監(jiān)聽程序1.選擇監(jiān)聽程序3.保存配置2.修改配置OracleOraDb11g_homeTNSListener服務(wù)進程沒有啟動輸入不存在的的網(wǎng)絡(luò)服務(wù)名6.4Oracle網(wǎng)絡(luò)連接服務(wù)器端配置添加新的監(jiān)聽程序1.6.5Oracle網(wǎng)絡(luò)連接客戶端配置如果一臺計算機上安裝了Oracle11gDataBase軟件,則該計算機既可以作為服務(wù)器,又可以作為客戶端來連接另外一個Oracle數(shù)據(jù)庫服務(wù)器Oracle11g安裝程序會自動地創(chuàng)建一個默認的tnsnames.ora文件如果一臺計算機上只安裝了Oracle11gClient客戶端軟件,則該計算機只能作為客戶端,不會產(chǎn)生默認的tnsnames.ora文件1.選擇需要修改的網(wǎng)絡(luò)服務(wù)名2.修改全局數(shù)據(jù)庫名添加網(wǎng)絡(luò)服務(wù)名3.修改主機名、端口號參數(shù)如果客戶端需要同時連接訪問多個Oracle數(shù)據(jù)庫服務(wù)器,該如何配置新增的網(wǎng)絡(luò)服務(wù)名網(wǎng)絡(luò)服務(wù)名配置文件tnsnames.ora中的HOST參數(shù)值與監(jiān)聽程序配置文件listener.ora中的HOST參數(shù)值不一致

6.5Oracle網(wǎng)絡(luò)連接客戶端配置如果一臺計算機上安裝在客戶端遠程連接Oracle數(shù)據(jù)庫服務(wù)器過程中,經(jīng)常會提示“連接超時”的錯誤信息,無法連接上服務(wù)器此時服務(wù)器與客戶端的配置卻都沒有任何錯誤此類問題產(chǎn)生的原因往往是Windows防火墻屏蔽了1521端口6.6遠程連接Oracle常見問題通過telnet命令測試遠程服務(wù)器是否屏蔽1521端口1.選擇“例外”選項卡2.單擊“添加端口”3.添加1521端口,“名稱”值可以任意指定在客戶端遠程連接Oracle數(shù)據(jù)庫服務(wù)器過程中,經(jīng)常會提示“6.7Oracle11g管理工具SQL*PlusSQLDeveloperOracleEnterpriseManager

6.7Oracle11g管理工具SQL*PlusSQL6.8卸載Oracle11g停止所有的Oracle服務(wù)使用OracleUniversalInstaller從產(chǎn)品清單中卸載所有的Oracle組件手動刪除Oracle遺留成分

從文件夾中刪除Oracle遺留成分。直接刪除安裝Oracle產(chǎn)品主目錄下的遺留的文件夾及文件夾6.8卸載Oracle11g停止所有的Oracle服務(wù)手

總結(jié)Oracle進程分為用戶進程、服務(wù)器進程和后臺進程監(jiān)聽程序是客戶端與Oracle服務(wù)器之間通信的中介Oracle內(nèi)存可分為系統(tǒng)全局區(qū)(SGA)和程序全局區(qū)(PGA)系統(tǒng)全局區(qū)中包括數(shù)據(jù)緩沖區(qū)、字典緩沖區(qū)、重做日志緩沖區(qū)、SQL共享池Oracle數(shù)據(jù)庫的物理文件包括數(shù)據(jù)文件、重做日志文件、控制文件Oracle實例是后臺進程和內(nèi)存結(jié)構(gòu)的集合,為應(yīng)用程序提供對數(shù)據(jù)庫中數(shù)據(jù)的管理和維護功能Oracle服務(wù)器一般指數(shù)據(jù)庫各軟件部件(如SQL*Plus)、Oracle實例及Oracle數(shù)據(jù)庫3個主要部分SYS用戶是Oracle中的超級用戶;SYSTEM用戶是Oracle中默認的管理員,它擁有DBA權(quán)限;SCOTT是Oracle數(shù)據(jù)庫的一個示范賬號Oracle包含3個用于網(wǎng)絡(luò)連接配置的文件,分別是監(jiān)聽程序的配置文件(listener.ora)、本地網(wǎng)格服務(wù)名的配置文件(tnsnames.ora)、命名方法配置文件(sqlnet.ora)Oracle管理工具主要包括SQL*Plus、SQLDeveloper和OracleEnterpriseManager總結(jié)Oracle進程分為用戶進程、服務(wù)器進程和后臺進程第1章_Oracle_11g基礎(chǔ)入門(理論)課件第一章Oracle11g基礎(chǔ)入門第一章Oracle11g基礎(chǔ)入門本章內(nèi)容Oracle11g簡介Oracle11g體系結(jié)構(gòu)Oracle11g的安裝Oracle11g數(shù)據(jù)庫實例的創(chuàng)建Oracle11g實例的啟動與關(guān)閉Oracle網(wǎng)絡(luò)連接配置Oracle11g管理工具卸載Oracle11g本章內(nèi)容Oracle11g簡介本章目標理解Oracle11g體系結(jié)構(gòu)掌握Oracle11g數(shù)據(jù)庫實例的創(chuàng)建掌握Oracle11g實例的啟動與關(guān)閉掌握Oracle網(wǎng)絡(luò)連接配置本章目標理解Oracle11g體系結(jié)構(gòu)1.Oracle11g簡介Oracle數(shù)據(jù)庫系統(tǒng)是美國Oracle公司(甲骨文)提供的以分布式數(shù)據(jù)庫為核心的一組軟件產(chǎn)品Oracle數(shù)據(jù)庫系統(tǒng)主要包含以下4個特點支持大數(shù)據(jù)庫、多用戶、高性能的事務(wù)處理提供了基于角色(ROLE)分工的安全保密管理提供了新的分布式數(shù)據(jù)庫能力具有可移植性、可兼容性和可連接性1.1Oracle數(shù)據(jù)庫系統(tǒng)的特點1.Oracle11g簡介Oracle數(shù)據(jù)庫系統(tǒng)是美國1978年,Oracle1誕生了,它是使用匯編語言開發(fā)的,但它的出現(xiàn)并沒有引起太多的關(guān)注1982年,Oracle公司推出了Oracle3,這是第一個能夠運行在大型和小型機上的關(guān)系型數(shù)據(jù)庫1997年,Oracle公司又推出了基于Java語言的Oracle82001年6月,Oracle公司發(fā)布了Oracle9i2007年7月12日,甲骨文公司在美國紐約宣布推出Oracle11g,Oracle11g中的“g”代表“網(wǎng)格”1.2Oracle發(fā)展歷史網(wǎng)格計算可以將分布在世界各地的計算機連接在一起,并且將各地的計算機資源通過高速互聯(lián)網(wǎng)組成充分共享的資源集成。通過合理的調(diào)度,不同的計算環(huán)境被綜合利用并共享

1978年,Oracle1誕生了,它是使用匯編語言開發(fā)的,SQLServer只能在Windows上運行,沒有絲毫的開放性;Oracle能在所有主流平臺上運行(包括Windows)SQLServer很難處理日益增多的用戶數(shù)和數(shù)據(jù)卷;Oracle平行服務(wù)器通過使一組結(jié)點共享同一簇中的工作來擴展WindowNT的能力,提供高可用性和高伸縮性的簇的解決方案SQLServer沒有獲得任何安全證書,Oracle獲得了最高認證級別的ISO標準認證SQLServer在多用戶時性能不佳。Oracle中引入了共享SQL和多線索服務(wù)器體系結(jié)構(gòu),從而減少了Oracle的資源占用,并增強了Oracle的并發(fā)處理能力1.3Oracle與SQLServer比較為什么在學(xué)習(xí)了SQLServer數(shù)據(jù)庫之后還需要學(xué)習(xí)Oracle數(shù)據(jù)庫?SQLServer只能在Windows上運行,沒有絲毫的開2.Oracle11g體系結(jié)構(gòu)2.1進程結(jié)構(gòu)用戶進程用戶進程是在客戶機內(nèi)存上運行的程序,它向服務(wù)器進程發(fā)出數(shù)據(jù)處理請求當客戶端運行一個應(yīng)用程序,準備向數(shù)據(jù)庫服務(wù)器發(fā)送請求時,將會創(chuàng)建用戶進程服務(wù)器進程為了給客戶端的用戶進程提供服務(wù),Oracle會在客戶端成功連接Oracle數(shù)據(jù)庫時,在服務(wù)器端創(chuàng)建相應(yīng)的服務(wù)器進程客戶端的進程與服務(wù)器端的進程是一一對應(yīng)的用戶進程必須通過服務(wù)器進程才能訪問數(shù)據(jù)庫后臺進程在同一時刻,Oracle可以處理上百個并發(fā)的請求,進行復(fù)雜的數(shù)據(jù)操作,為了提高系統(tǒng)性能并協(xié)調(diào)多個用戶,Oracle使用一些附加的線程,稱為后臺進程后臺進程存在于操作系統(tǒng)中,在Oracle實例啟動時自動啟動2.Oracle11g體系結(jié)構(gòu)2.1進程結(jié)構(gòu)2.1進程結(jié)構(gòu)服務(wù)器進程任務(wù)解析并執(zhí)行用戶所提交的SQL語句搜索SGA區(qū)的數(shù)據(jù)庫緩存,決定是否讀取數(shù)據(jù)文件,如果數(shù)據(jù)塊不在SGA區(qū)的數(shù)據(jù)庫緩存中,則將其從數(shù)據(jù)文件中讀入將查詢或執(zhí)行后形成的數(shù)據(jù)返回給用戶后臺進程任務(wù)在內(nèi)存和外存之間進行I/O操作監(jiān)視各個進程的狀態(tài)協(xié)調(diào)各個進程的任務(wù)維護系統(tǒng)的性能保證系統(tǒng)的可靠性能2.1進程結(jié)構(gòu)服務(wù)器進程任務(wù)2.2內(nèi)存結(jié)構(gòu)SGA(SystemGlobalArea,系統(tǒng)全局區(qū))SGA是例程內(nèi)存結(jié)構(gòu)的主要組成部分,每個Oracle實例都只有一個SGA當多個用戶同時連接到一個例程時,所有的用戶進程、服務(wù)器進程都共享SGA它是不同用戶進程與服務(wù)器進程進行通信的中心可以將SGA看作是Oracle的心臟。當啟動Oracle實例時,即分配一個SGA;當終止Oracle實例時,即釋放SGA占用的內(nèi)存用戶進程用戶進程服務(wù)器進程服務(wù)器進程SGA2.2內(nèi)存結(jié)構(gòu)SGA(SystemGlobalArea內(nèi)存結(jié)構(gòu)SGA(SystemGlobalArea,系統(tǒng)全局區(qū))數(shù)據(jù)緩沖區(qū)(DataBufferCache)用于存儲最近從數(shù)據(jù)庫中讀取出來的數(shù)據(jù)塊用戶進程查看的數(shù)據(jù)首先駐留在數(shù)據(jù)緩沖區(qū)中,如果用戶進程需要的信息不在該區(qū)內(nèi),才訪問物理磁盤驅(qū)動器讀取數(shù)據(jù)塊,然后放入該區(qū)供其他用戶進程或服務(wù)器進程使用重做日志緩沖區(qū)(RedoLogBuffer)當執(zhí)行INSERT、UPDAE、DELETE等操作時,Oracle都會為這些操作生成重做記錄,以便在可能出現(xiàn)的數(shù)據(jù)庫恢復(fù)過程中用于回滾事務(wù)但是為了加快訪問速度和工作效率,重做記錄并不直接寫入重做日志文件中,而是首先存入SGA的重做日志緩沖區(qū)內(nèi),當重做日志緩沖區(qū)中的重做記錄達到一定數(shù)量或到達某個時間點時,再分批寫入重做日志文件中SQL共享池(SharedSQLPool)SQL共享池是程序的高速緩沖區(qū),存放所有通過SQL語法分析并準備執(zhí)行的SQL語句內(nèi)存結(jié)構(gòu)SGA(SystemGlobalArea,系統(tǒng)全內(nèi)存結(jié)構(gòu)程序全局區(qū)(ProgramGlobalArea,PGA)當用戶進程連接到Oracle實例時,就會創(chuàng)建一個對應(yīng)的會話,該會話使用一個服務(wù)器進程來完成客戶端與Oracle實例之間的通信每個服務(wù)器進程都有一個自己的PGA。PGA由Oracle為服務(wù)器進程分配,專門作為當前用戶會話的內(nèi)存區(qū)這個內(nèi)存區(qū)是非共享的,只有服務(wù)器進程本身才能訪問它自己的PGA區(qū)。而SGA區(qū)則是所有服務(wù)器進程都能共享、可寫的內(nèi)存區(qū)內(nèi)存結(jié)構(gòu)程序全局區(qū)(ProgramGlobalArea,2.3邏輯結(jié)構(gòu)Oracle數(shù)據(jù)庫數(shù)據(jù)段數(shù)據(jù)段臨時段回滾段數(shù)據(jù)區(qū)間數(shù)據(jù)區(qū)間數(shù)據(jù)塊數(shù)據(jù)塊……數(shù)據(jù)庫表空間邏輯對象數(shù)據(jù)段數(shù)據(jù)區(qū)間數(shù)據(jù)塊表空間表空間表空間視圖表索引索引段數(shù)據(jù)塊(DataBlock)數(shù)據(jù)塊是最小的數(shù)據(jù)管理單位,即Oracle中所有的I/O操作都以塊為單位。數(shù)據(jù)塊的大小是操作系統(tǒng)塊大小的整數(shù)倍,常見大小為2KB或4KB數(shù)據(jù)區(qū)間(DataExtent)數(shù)據(jù)區(qū)間由物理上連續(xù)存放的塊所構(gòu)成,它是Oracle存儲分配的最小單位,一個或多個塊組成一個數(shù)據(jù)區(qū)間數(shù)據(jù)段(DataSegment)若干個數(shù)據(jù)區(qū)間構(gòu)成數(shù)據(jù)段表空間(TableSpace)為了提高數(shù)據(jù)庫服務(wù)器管理和運行的效率,Oracle11g使用“表空間”這個虛擬的概念來管理邏輯對象,用戶可以將不同性質(zhì)的邏輯對象存放在不同的表空間下在Windows操作系統(tǒng)中,使用文件夾來分類管理各種文件,表空間相當于Oracle數(shù)據(jù)庫的文件夾。每個表空間由一個或多個數(shù)據(jù)文件組成,一個數(shù)據(jù)文件只能與一個表空間相聯(lián)系名稱主要作用EXAMPLE實例表空間,存放實例信息SYSAUXSYSTEM表空間的輔助空間,用以減少SYSTEM表空間的負荷SYSTEM存儲數(shù)據(jù)字典,包括表、視圖、存儲過程的定義等TEMP存儲SQL語句處理的表和索引的信息UNDOTBS1回滾表空間,存放數(shù)據(jù)庫恢復(fù)信息USERS用戶表空間,存放用戶私有信息Oracle數(shù)據(jù)庫服務(wù)器上的默認表空間

數(shù)據(jù)庫相當于一個柜子,柜子中的抽屜相當于表空間,抽屜中的文件夾相當于數(shù)據(jù)文件,文件夾中的紙相當于表,寫在紙上的信息相當于數(shù)據(jù)。2.3邏輯結(jié)構(gòu)Oracle數(shù)據(jù)庫數(shù)據(jù)段數(shù)據(jù)段臨時段回滾段數(shù)物理塊

物理塊是操作系統(tǒng)分配的基本存儲單位,邏輯結(jié)構(gòu)中的數(shù)據(jù)塊由若干個物理塊構(gòu)成物理文件每個物理文件由苦干個物理塊所組成,包括數(shù)據(jù)文件、控制文件和日志文件數(shù)據(jù)文件數(shù)據(jù)文件是實際存儲插入到數(shù)據(jù)庫表中的實際數(shù)據(jù)的操作系統(tǒng)文件數(shù)據(jù)文件的擴展名為“*.dbf”重做日志文件Oracle使用重做日志文件在故障發(fā)生之后重現(xiàn)當時的數(shù)據(jù)庫操作,便于數(shù)據(jù)庫的恢復(fù)重做日志文件的擴展名為“*.log”控制文件控制文件為二進制文件,它存儲了數(shù)據(jù)庫的名稱,數(shù)據(jù)文件和重做日志文件的名稱、位置、聯(lián)機/脫機狀態(tài)和大小等信息只有控制文件正常,才能“裝載”、“打開”數(shù)據(jù)庫,控制文件的擴展名為“*.ctl”

2.4物理結(jié)構(gòu)控制文件Oracle數(shù)據(jù)庫控制文件物理塊物理塊物理塊數(shù)據(jù)庫物理文件物理塊日志文件數(shù)據(jù)文件數(shù)據(jù)文件重做日志文件物理塊2.4物理結(jié)構(gòu)控制文件Oracle控制文件物理塊物Oracle實例Oracle實例是后臺進程和內(nèi)存結(jié)構(gòu)的集合。作為Oracle數(shù)據(jù)庫與應(yīng)用程序的接口Oracle實例為應(yīng)用程序提供對數(shù)據(jù)庫中數(shù)據(jù)的管理和維護功能

Oracle數(shù)據(jù)庫Oracle數(shù)據(jù)庫由操作系統(tǒng)文件組成,這些文件也稱為數(shù)據(jù)庫文件,為數(shù)據(jù)庫信息提供實際的物理存儲區(qū)

Oracle數(shù)據(jù)庫最終由Oracle實例負責(zé)完成對數(shù)據(jù)庫中全部數(shù)據(jù)的管理工作

Oracle服務(wù)器Oracle服務(wù)器一般指數(shù)據(jù)庫各軟件部件(如SQL*Plus)、Oracle實例及Oracle數(shù)據(jù)庫3個主要部分,它由安裝在服務(wù)器上的所有軟件及啟動成功后的實例組成

2.5總體結(jié)構(gòu)數(shù)據(jù)庫就像是一個倉庫,存儲了各類貨物;而實例就像出入倉庫的搬運工,負責(zé)將貨物搬出、搬入倉庫Oracle實例2.5總體結(jié)構(gòu)數(shù)據(jù)庫就像是一個倉庫,存儲了3.Oracle11g的安裝如果客戶端需要遠程訪問某個Oracle數(shù)據(jù)庫服務(wù)器,則客戶端請求的遠程Oracle數(shù)據(jù)庫名稱是全局數(shù)據(jù)庫名還是SID?按以上步驟成功安裝Oracle11g后,會在作為Oracle服務(wù)器的計算機中創(chuàng)建首個名為scce的Oracle數(shù)據(jù)庫實例。在一臺計算機中能否創(chuàng)建多個Oracle數(shù)據(jù)庫實例?3.Oracle11g的安裝如果客戶端需要遠程訪問某個4.Oracle11g數(shù)據(jù)庫實例的創(chuàng)建4.Oracle11g數(shù)據(jù)庫實例的創(chuàng)建Oracle11g數(shù)據(jù)庫實例的創(chuàng)建新建一個數(shù)據(jù)庫時,Oracle將默認創(chuàng)建幾個用戶SYS用戶SYS用戶是Oracle中的超級用戶,主要用于維護系統(tǒng)信息和管理實例,數(shù)據(jù)庫中數(shù)據(jù)字典的所有表和視圖都存儲在SYS模式中SYSTEM用戶SYSTEM用戶是Oracle中默認的管理員,它擁有DBA權(quán)限。該用戶擁有Oracle管理工具使用的內(nèi)部表和視圖,通常通過SYSTEM用戶管理Oracle數(shù)據(jù)庫的用戶、權(quán)限和存儲等SCOTT用戶SCOTT是Oracle數(shù)據(jù)庫的一個示范賬號。SCOTT用戶模式包含4張示范表,SCOTT用戶的默認口令為tiger對于日常的管理任務(wù),建議使用SYSTEM用戶登錄Oracle數(shù)據(jù)庫服務(wù)器。如果需要執(zhí)行備份、恢復(fù)、更改數(shù)據(jù)庫的任務(wù),就必須以SYS用戶登錄Oracle數(shù)據(jù)庫服務(wù)器Oracle11g數(shù)據(jù)庫實例的創(chuàng)建新建一個數(shù)據(jù)庫時,Ora5.Oracle11g實例的啟動與關(guān)閉Windows操作系統(tǒng)下的Oracle服務(wù)以后臺服務(wù)進程的方式進行管理

OracleOraDb11g_homeTNSListener服務(wù)Oracle服務(wù)器的監(jiān)聽程序OracleServiceSIDOracle的核心服務(wù),要啟動Oracle實例,必須啟動該服務(wù)OracleJobSchedulerSID任務(wù)調(diào)度服務(wù),負責(zé)對用戶創(chuàng)建的作業(yè)按預(yù)先設(shè)置的時間周期性地進行調(diào)度執(zhí)行,從而實現(xiàn)Oracle服務(wù)器的自動管理功能OracleDBConsoleSID負責(zé)在Windows平臺下啟動Oracle企業(yè)管理器。Oracle11g企業(yè)管理器是一個功能完善的Oracle數(shù)據(jù)庫管理工具,可以管理本地數(shù)據(jù)庫環(huán)境和網(wǎng)格環(huán)境5.Oracle11g實例的啟動與關(guān)閉Windows操作6.1網(wǎng)絡(luò)連接配置概述在Oracle產(chǎn)品安裝完成后,客戶端為了與數(shù)據(jù)庫服務(wù)器連接實現(xiàn)數(shù)據(jù)訪問,必須進行網(wǎng)絡(luò)連接配置Oracle網(wǎng)絡(luò)配置分為:服務(wù)器端配置和客戶端配置。配置的結(jié)果由配置文件來保存配置文件監(jiān)聽程序的配置文件(listener.ora)服務(wù)器端配置的目的就是配置該文件,該文件存儲于服務(wù)器端本地網(wǎng)格服務(wù)名的配置文件(tnsnames.ora)當采用本地命名方法時,就必須在客戶端保存、配置tnsnames.ora文件,客戶端配置的目的就是配置該文件命名方法配置文件(sqlnet.ora)如果需要配置命名方法,則還要在客戶端和服務(wù)器端配置一致的文件Oracle11g默認采用本地命名方法6.Oracle網(wǎng)絡(luò)連接配置端口號主機名監(jiān)聽名稱使用的網(wǎng)絡(luò)協(xié)議網(wǎng)絡(luò)服務(wù)名主機名端口號全局數(shù)據(jù)庫名6.1網(wǎng)絡(luò)連接配置概述6.Oracle網(wǎng)絡(luò)連接配置端口號6.2連接描述符與網(wǎng)絡(luò)服務(wù)名Oracle服務(wù)器使用連接描述符作為客戶端訪問數(shù)據(jù)庫服務(wù)器的路徑,即用于指定數(shù)據(jù)庫的位置和數(shù)據(jù)庫服務(wù)名等信息網(wǎng)絡(luò)服務(wù)名是數(shù)據(jù)庫服務(wù)器在客戶端的名稱,即邏輯名或者數(shù)據(jù)庫的別名。它用于幫助客戶端準確地連接到指定的Oracle數(shù)據(jù)庫服務(wù)器網(wǎng)絡(luò)服務(wù)名被存儲在客戶端的監(jiān)聽程序配置文件“l(fā)istener.ora”中SCCE=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=hello)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=scce.wuhan)))連接描述符網(wǎng)絡(luò)服務(wù)名一個數(shù)據(jù)庫可以有多個網(wǎng)絡(luò)服務(wù)名6.2連接描述符與網(wǎng)絡(luò)服務(wù)名Oracle服務(wù)器使用連接描述6.3監(jiān)聽程序監(jiān)聽程序是運行在服務(wù)器端的一個單獨的服務(wù)進程,在Windows服務(wù)中對應(yīng)于OracleOraDb11g_homeTNSListener服務(wù)監(jiān)聽程序通過指定的協(xié)議監(jiān)聽端口號,監(jiān)聽網(wǎng)絡(luò)上的客戶端對服務(wù)器的連接請求,并管理客戶端與服務(wù)器之間的網(wǎng)絡(luò)通信量每次客戶端請求與服務(wù)器進行網(wǎng)絡(luò)會話時,服務(wù)器的監(jiān)聽程序就會監(jiān)聽到該請求,并作為客戶端請求的中介,再將請求傳送給Oracle服務(wù)器監(jiān)聽程序由存儲在服務(wù)器端的監(jiān)聽程序配置文件“l(fā)istener.ora”來集中控制6.3監(jiān)聽程序監(jiān)聽程序是運行在服務(wù)器端的一個單獨的服務(wù)進程6.4Oracle網(wǎng)絡(luò)連接服務(wù)器端配置添加新的監(jiān)聽程序

溫馨提示

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

評論

0/150

提交評論