第1章_Oracle_11g基礎入門(理論)_第1頁
第1章_Oracle_11g基礎入門(理論)_第2頁
第1章_Oracle_11g基礎入門(理論)_第3頁
第1章_Oracle_11g基礎入門(理論)_第4頁
第1章_Oracle_11g基礎入門(理論)_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第一章第一章 Oracle 11g基礎入門基礎入門本章內(nèi)容本章內(nèi)容uOracle 11g簡介uOracle 11g體系結構uOracle 11g的安裝uOracle 11g數(shù)據(jù)庫實例的創(chuàng)建uOracle 11g實例的啟動與關閉uOracle網(wǎng)絡連接配置uOracle 11g管理工具u卸載Oracle 11g本章目標本章目標u理解Oracle 11g體系結構u掌握Oracle 11g數(shù)據(jù)庫實例的創(chuàng)建u掌握Oracle 11g實例的啟動與關閉u掌握Oracle網(wǎng)絡連接配置1. Oracle 11g 簡介簡介uOracle數(shù)據(jù)庫系統(tǒng)是美國Oracle公司(甲骨文)提供的以分布式數(shù)據(jù)庫為核心的一組軟件

2、產(chǎn)品 uOracle數(shù)據(jù)庫系統(tǒng)主要包含以下4個特點n支持大數(shù)據(jù)庫、多用戶、高性能的事務處理 n提供了基于角色(ROLE)分工的安全保密管理 n提供了新的分布式數(shù)據(jù)庫能力 n具有可移植性、可兼容性和可連接性1.1 Oracle 數(shù)據(jù)庫系統(tǒng)的特點u1978年,Oracle 1誕生了,它是使用匯編語言開發(fā)的,但它的出現(xiàn)并沒有引起太多的關注 u1982年,Oracle公司推出了Oracle 3,這是第一個能夠運行在大型和小型機上的關系型數(shù)據(jù)庫 u1997年,Oracle公司又推出了基于Java語言的Oracle 8 u2001年6月,Oracle公司發(fā)布了Oracle 9i u2007年7月12日,甲

3、骨文公司在美國紐約宣布推出Oracle 11g,Oracle 11g中的“g”代表“網(wǎng)格”1.2 Oracle發(fā)展歷史發(fā)展歷史網(wǎng)格計算可以將分布在世界各地的計算機連接在一起,并且將各地的計算機資源通過高速互聯(lián)網(wǎng)組成充分共享的資源集成。通過合理的調度,不同的計算環(huán)境被綜合利用并共享 uSQL Server只能在Windows上運行,沒有絲毫的開放性;Oracle能在所有主流平臺上運行(包括Windows) uSQL Server很難處理日益增多的用戶數(shù)和數(shù)據(jù)卷;Oracle平行服務器通過使一組結點共享同一簇中的工作來擴展Window NT的能力,提供高可用性和高伸縮性的簇的解決方案 uSQL S

4、erver沒有獲得任何安全證書,Oracle獲得了最高認證級別的ISO標準認證 uSQL Server在多用戶時性能不佳。Oracle中引入了共享SQL和多線索服務器體系結構,從而減少了Oracle的資源占用,并增強了Oracle的并發(fā)處理能力1.3 Oracle與與SQL Server比較比較為什么在學習了SQL Server數(shù)據(jù)庫之后還需要學習Oracle數(shù)據(jù)庫?2. Oracle 11g體系結構體系結構2.1 進程結構u用戶進程n用戶進程是在客戶機內(nèi)存上運行的程序,它向服務器進程發(fā)出數(shù)據(jù)處理請求 n當客戶端運行一個應用程序,準備向數(shù)據(jù)庫服務器發(fā)送請求時,將會創(chuàng)建用戶進程 u服務器進程n為

5、了給客戶端的用戶進程提供服務,Oracle會在客戶端成功連接Oracle數(shù)據(jù)庫時,在服務器端創(chuàng)建相應的服務器進程n客戶端的進程與服務器端的進程是一一對應的n用戶進程必須通過服務器進程才能訪問數(shù)據(jù)庫u后臺進程n在同一時刻,Oracle可以處理上百個并發(fā)的請求,進行復雜的數(shù)據(jù)操作,為了提高系統(tǒng)性能并協(xié)調多個用戶,Oracle使用一些附加的線程,稱為后臺進程n后臺進程存在于操作系統(tǒng)中,在Oracle實例啟動時自動啟動2.1 進程結構進程結構u服務器進程任務 n解析并執(zhí)行用戶所提交的SQL語句n搜索SGA區(qū)的數(shù)據(jù)庫緩存,決定是否讀取數(shù)據(jù)文件,如果數(shù)據(jù)塊不在SGA區(qū)的數(shù)據(jù)庫緩存中,則將其從數(shù)據(jù)文件中讀入

6、n將查詢或執(zhí)行后形成的數(shù)據(jù)返回給用戶u后臺進程任務 n在內(nèi)存和外存之間進行I/O操作n監(jiān)視各個進程的狀態(tài)n協(xié)調各個進程的任務n維護系統(tǒng)的性能n保證系統(tǒng)的可靠性能2.2 內(nèi)存結構內(nèi)存結構uSGA(System Global Area,系統(tǒng)全局區(qū))nSGA是例程內(nèi)存結構的主要組成部分,每個Oracle實例都只有一個SGAn當多個用戶同時連接到一個例程時,所有的用戶進程、服務器進程都共享SGA n它是不同用戶進程與服務器進程進行通信的中心 n可以將SGA看作是Oracle的心臟。當啟動Oracle實例時,即分配一個SGA;當終止Oracle實例時,即釋放SGA占用的內(nèi)存用戶進程用戶進程服務器進程服務

7、器進程SGA內(nèi)存結構內(nèi)存結構uSGA(System Global Area,系統(tǒng)全局區(qū))n數(shù)據(jù)緩沖區(qū)(Data Buffer Cache)用于存儲最近從數(shù)據(jù)庫中讀取出來的數(shù)據(jù)塊 用戶進程查看的數(shù)據(jù)首先駐留在數(shù)據(jù)緩沖區(qū)中,如果用戶進程需要的信息不在該區(qū)內(nèi),才訪問物理磁盤驅動器讀取數(shù)據(jù)塊,然后放入該區(qū)供其他用戶進程或服務器進程使用 n重做日志緩沖區(qū)(Redo Log Buffer)當執(zhí)行INSERT、UPDAE、DELETE等操作時,Oracle都會為這些操作生成重做記錄,以便在可能出現(xiàn)的數(shù)據(jù)庫恢復過程中用于回滾事務 但是為了加快訪問速度和工作效率,重做記錄并不直接寫入重做日志文件中,而是首先存入

8、SGA的重做日志緩沖區(qū)內(nèi),當重做日志緩沖區(qū)中的重做記錄達到一定數(shù)量或到達某個時間點時,再分批寫入重做日志文件中 nSQL共享池(Shared SQL Pool) SQL共享池是程序的高速緩沖區(qū),存放所有通過SQL語法分析并準備執(zhí)行的SQL語句內(nèi)存結構內(nèi)存結構u程序全局區(qū)(Program Global Area,PGA)u當用戶進程連接到Oracle實例時,就會創(chuàng)建一個對應的會話,該會話使用一個服務器進程來完成客戶端與Oracle實例之間的通信u每個服務器進程都有一個自己的PGA。PGA由Oracle為服務器進程分配,專門作為當前用戶會話的內(nèi)存區(qū)u這個內(nèi)存區(qū)是非共享的,只有服務器進程本身才能訪問

9、它自己的PGA區(qū)。而SGA區(qū)則是所有服務器進程都能共享、可寫的內(nèi)存區(qū)Oracle數(shù)據(jù)庫數(shù)據(jù)段數(shù)據(jù)段臨時段回滾段數(shù)據(jù)區(qū)間數(shù)據(jù)區(qū)間數(shù)據(jù)庫表空間邏輯對象數(shù)據(jù)段表空間表空間表空間視圖表索引索引段u數(shù)據(jù)塊(Data Block)n數(shù)據(jù)塊是最小的數(shù)據(jù)管理單位,即Oracle中所有的I/O操作都以塊為單位。數(shù)據(jù)塊的大小是操作系統(tǒng)塊大小的整數(shù)倍,常見大小為2KB或4KB u數(shù)據(jù)區(qū)間(Data Extent)n數(shù)據(jù)區(qū)間由物理上連續(xù)存放的塊所構成,它是Oracle存儲分配的最小單位,一個或多個塊組成一個數(shù)據(jù)區(qū)間 u數(shù)據(jù)段(Data Segment)n若干個數(shù)據(jù)區(qū)間構成數(shù)據(jù)段 u表空間(Table Space)n為

10、了提高數(shù)據(jù)庫服務器管理和運行的效率,Oracle 11g使用“表空間”這個虛擬的概念來管理邏輯對象,用戶可以將不同性質的邏輯對象存放在不同的表空間下 n在Windows操作系統(tǒng)中,使用文件夾來分類管理各種文件,表空間相當于Oracle數(shù)據(jù)庫的文件夾。n每個表空間由一個或多個數(shù)據(jù)文件組成,一個數(shù)據(jù)文件只能與一個表空間相聯(lián)系 名稱主要作用EXAMPLE實例表空間,存放實例信息SYSAUXSYSTEM表空間的輔助空間,用以減少SYSTEM表空間的負荷SYSTEM存儲數(shù)據(jù)字典,包括表、視圖、存儲過程的定義等TEMP存儲SQL語句處理的表和索引的信息UNDOTBS1回滾表空間,存放數(shù)據(jù)庫恢復信息USER

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

12、制文件的擴展名為“*.ctl” 2.4 物理結構物理結構控制文件數(shù)據(jù)庫物理文件物理塊數(shù)據(jù)文件重做日志文件uOracle實例nOracle實例是后臺進程和內(nèi)存結構的集合。作為Oracle數(shù)據(jù)庫與應用程序的接口nOracle實例為應用程序提供對數(shù)據(jù)庫中數(shù)據(jù)的管理和維護功能 uOracle數(shù)據(jù)庫nOracle數(shù)據(jù)庫由操作系統(tǒng)文件組成,這些文件也稱為數(shù)據(jù)庫文件,為數(shù)據(jù)庫信息提供實際的物理存儲區(qū) nOracle數(shù)據(jù)庫最終由Oracle實例負責完成對數(shù)據(jù)庫中全部數(shù)據(jù)的管理工作 uOracle服務器nOracle服務器一般指數(shù)據(jù)庫各軟件部件(如SQL*Plus)、Oracle實例及Oracle數(shù)據(jù)庫3個主要

13、部分,它由安裝在服務器上的所有軟件及啟動成功后的實例組成 2.5 總體結構總體結構數(shù)據(jù)庫就像是一個倉庫,存儲了各類貨物;而實例就像出入倉庫的搬運工,負責將貨物搬出、搬入倉庫3. Oracle 11g 的安裝的安裝如果客戶端需要遠程訪問某個Oracle數(shù)據(jù)庫服務器,則客戶端請求的遠程Oracle數(shù)據(jù)庫名稱是全局數(shù)據(jù)庫名還是SID?按以上步驟成功安裝Oracle 11g后,會在作為Oracle服務器的計算機中創(chuàng)建首個名為scce的Oracle數(shù)據(jù)庫實例。在一臺計算機中能否創(chuàng)建多個Oracle數(shù)據(jù)庫實例?4. Oracle 11g數(shù)據(jù)庫實例的創(chuàng)建數(shù)據(jù)庫實例的創(chuàng)建Oracle 11g數(shù)據(jù)庫實例的創(chuàng)建數(shù)

14、據(jù)庫實例的創(chuàng)建u新建一個數(shù)據(jù)庫時,Oracle將默認創(chuàng)建幾個用戶 nSYS用戶SYS用戶是Oracle中的超級用戶,主要用于維護系統(tǒng)信息和管理實例,數(shù)據(jù)庫中數(shù)據(jù)字典的所有表和視圖都存儲在SYS模式中 nSYSTEM用戶SYSTEM用戶是Oracle中默認的管理員,它擁有DBA權限。該用戶擁有Oracle管理工具使用的內(nèi)部表和視圖,通常通過SYSTEM用戶管理Oracle數(shù)據(jù)庫的用戶、權限和存儲等 nSCOTT用戶SCOTT是Oracle數(shù)據(jù)庫的一個示范賬號。SCOTT用戶模式包含4張示范表,SCOTT用戶的默認口令為tiger對于日常的管理任務,建議使用SYSTEM用戶登錄Oracle數(shù)據(jù)庫服

15、務器。如果需要執(zhí)行備份、恢復、更改數(shù)據(jù)庫的任務,就必須以SYS用戶登錄Oracle數(shù)據(jù)庫服務器5. Oracle 11g實例的啟動與關閉實例的啟動與關閉uWindows操作系統(tǒng)下的Oracle服務以后臺服務進程的方式進行管理n OracleOraDb11g_homeTNSListener服務Oracle服務器的監(jiān)聽程序 nOracleServiceSIDOracle的核心服務,要啟動Oracle實例,必須啟動該服務 nOracleJobSchedulerSID任務調度服務,負責對用戶創(chuàng)建的作業(yè)按預先設置的時間周期性地進行調度執(zhí)行,從而實現(xiàn)Oracle服務器的自動管理功能 nOracleDBCo

16、nsoleSID負責在Windows平臺下啟動Oracle企業(yè)管理器。Oracle 11g企業(yè)管理器是一個功能完善的Oracle數(shù)據(jù)庫管理工具,可以管理本地數(shù)據(jù)庫環(huán)境和網(wǎng)格環(huán)境6.1 網(wǎng)絡連接配置概述u在Oracle產(chǎn)品安裝完成后,客戶端為了與數(shù)據(jù)庫服務器連接實現(xiàn)數(shù)據(jù)訪問,必須進行網(wǎng)絡連接配置uOracle網(wǎng)絡配置分為:服務器端配置和客戶端配置。配置的結果由配置文件來保存u配置文件n監(jiān)聽程序的配置文件(listener.ora)服務器端配置的目的就是配置該文件,該文件存儲于服務器端n本地網(wǎng)格服務名的配置文件(tnsnames.ora)當采用本地命名方法時,就必須在客戶端保存、配置tnsname

17、s.ora文件,客戶端配置的目的就是配置該文件n命名方法配置文件(sqlnet.ora)如果需要配置命名方法,則還要在客戶端和服務器端配置一致的文件Oracle 11g默認采用本地命名方法6. Oracle網(wǎng)絡連接配置網(wǎng)絡連接配置端口號主機名監(jiān)聽名稱使用的網(wǎng)絡協(xié)議網(wǎng)絡服務名主機名端口號全局數(shù)據(jù)庫名6.2 連接描述符與網(wǎng)絡服務名連接描述符與網(wǎng)絡服務名uOracle服務器使用連接描述符作為客戶端訪問數(shù)據(jù)庫服務器的路徑,即用于指定數(shù)據(jù)庫的位置和數(shù)據(jù)庫服務名等信息u網(wǎng)絡服務名是數(shù)據(jù)庫服務器在客戶端的名稱,即邏輯名或者數(shù)據(jù)庫的別名。它用于幫助客戶端準確地連接到指定的Oracle數(shù)據(jù)庫服務器u網(wǎng)絡服務名被

18、存儲在客戶端的監(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)絡服務名一個數(shù)據(jù)庫可以有多個網(wǎng)絡服務名6.3 監(jiān)聽程序監(jiān)聽程序u監(jiān)聽程序是運行在服務器端的一個單獨的服務進程,在Windows服務中對應于OracleOraDb11g_homeTNSListener服務u監(jiān)聽程序通過指定的協(xié)議監(jiān)聽端口號,

19、監(jiān)聽網(wǎng)絡上的客戶端對服務器的連接請求,并管理客戶端與服務器之間的網(wǎng)絡通信量u每次客戶端請求與服務器進行網(wǎng)絡會話時,服務器的監(jiān)聽程序就會監(jiān)聽到該請求,并作為客戶端請求的中介,再將請求傳送給Oracle服務器u監(jiān)聽程序由存儲在服務器端的監(jiān)聽程序配置文件“l(fā)istener.ora”來集中控制6.4 Oracle網(wǎng)絡連接服務器端配置網(wǎng)絡連接服務器端配置添加新的監(jiān)聽程序1. 選擇監(jiān)聽程序3. 保存配置2. 修改配置OracleOraDb11g_homeTNSListener服務進程沒有啟動 輸入不存在的的網(wǎng)絡服務名 6.5 Oracle網(wǎng)絡連接客戶端配置網(wǎng)絡連接客戶端配置 u如果一臺計算機上安裝了Ora

20、cle 11g DataBase軟件,則該計算機既可以作為服務器,又可以作為客戶端來連接另外一個Oracle數(shù)據(jù)庫服務器uOracle 11g安裝程序會自動地創(chuàng)建一個默認的tnsnames.ora文件u如果一臺計算機上只安裝了Oracle 11g Client客戶端軟件,則該計算機只能作為客戶端,不會產(chǎn)生默認的tnsnames.ora文件1. 選擇需要修改的網(wǎng)絡服務名2. 修改全局數(shù)據(jù)庫名添加網(wǎng)絡服務名3. 修改主機名、端口號參數(shù)如果客戶端需要同時連接訪問多個Oracle數(shù)據(jù)庫服務器 ,該如何配置新增的網(wǎng)絡服務名網(wǎng)絡服務名配置文件tnsnames.ora中的HOST參數(shù)值與監(jiān)聽程序配置文件listener.ora中的HOST參數(shù)值不一致 u在客戶端遠程連接Oracle數(shù)據(jù)庫服務器過程中,經(jīng)常會提示“連接超時”的錯誤信息,無法連接上服務器u此時服務器與客戶端的配置卻都沒有任何錯誤u此類問題產(chǎn)生的原因往往是Windows防火墻屏蔽了1521端口6.6 遠程連接遠程連接Oracle常見問題常見問題通過telnet命令測試遠程服務器是否屏蔽1521端口 1. 選擇“例外”選項卡2. 單擊“添加端口”3. 添加1521端口,“名稱”值可以任意指定6.7 Oracle 11g管

溫馨提示

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

評論

0/150

提交評論