oracle數(shù)據(jù)庫基礎(chǔ)培訓(xùn)_第1頁
oracle數(shù)據(jù)庫基礎(chǔ)培訓(xùn)_第2頁
oracle數(shù)據(jù)庫基礎(chǔ)培訓(xùn)_第3頁
oracle數(shù)據(jù)庫基礎(chǔ)培訓(xùn)_第4頁
oracle數(shù)據(jù)庫基礎(chǔ)培訓(xùn)_第5頁
已閱讀5頁,還剩176頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、Oracle數(shù)據(jù)庫維護(hù)培訓(xùn)膠片,集成產(chǎn)品部,Oracle 體系結(jié)構(gòu),目 標(biāo),通過這部分課程的學(xué)習(xí),您將了解以下內(nèi)容: 描述 Oracle 服務(wù)器的體系結(jié)構(gòu)及其主要構(gòu)件 列舉用戶連接到 Oracle 實(shí)例所涉及的結(jié)構(gòu) 雙機(jī)模式:RAC/HOT STANDBY,主要組件一覽,實(shí)例,系統(tǒng)全局區(qū),重做日志 緩沖區(qū),共享池,數(shù)據(jù)字典 緩沖區(qū),庫緩沖區(qū),DBWR,SMON,PMON,CKPT,LGWR,Others,用戶端進(jìn)程,服務(wù)器進(jìn)程,程序全局區(qū),控制文件,數(shù)據(jù)文件,歸檔日志文件,參數(shù)文件,密碼文件,重做日志文件,數(shù)據(jù)庫,數(shù)據(jù)塊高速 緩沖區(qū),Oracle服務(wù)器,一個(gè)Oracle服務(wù)器: 是一個(gè)提供開放

2、式的、全面的、綜合性信息管理服務(wù)的數(shù)據(jù)庫管理系統(tǒng) 由一個(gè)Oracle數(shù)據(jù)庫和一個(gè)Oracle實(shí)例組成,Oracle 服務(wù)器,Oracle實(shí)例,一個(gè)Oracle 實(shí)例: 是一種訪問 Oracle 數(shù)據(jù)庫的基本方式 總是打開一個(gè)且只打開一個(gè)數(shù)據(jù)庫 由內(nèi)存結(jié)構(gòu)和進(jìn)程結(jié)構(gòu)組成,后臺進(jìn)程,內(nèi)存結(jié)構(gòu),SGA,Redo log buffer cache,Database buffer cache,Shared pool,DBWR,SMON,PMON,CKPT,LGWR,Others,Data Dict. cache,Library cache,實(shí)例,創(chuàng)建連接和會話,Oracle 數(shù)據(jù)庫,Oracle數(shù)據(jù)庫

3、: 是作為一個(gè)單元對待的數(shù)據(jù)的集合體 由三種文件類型組成,控制文件,數(shù)據(jù)文件,歸檔日志文件,參數(shù)文件,密碼文件,重做日志文件,Oracle 數(shù)據(jù)庫,物理結(jié)構(gòu),Oracle數(shù)據(jù)庫的物理存儲是由實(shí)際的操作系統(tǒng)文件決定 控制文件 數(shù)據(jù)文件 重做日志文件,內(nèi)存結(jié)構(gòu),Oracle的內(nèi)存結(jié)構(gòu)由以下兩個(gè)內(nèi)存區(qū)域構(gòu)成: 系統(tǒng)全局區(qū)(SGA): 在實(shí)例啟動的時(shí)候分配,是Oracle實(shí)例中的一個(gè)基本成分 程序全局區(qū)(PGA): 服務(wù)器進(jìn)程啟動時(shí)分配,系統(tǒng)全局區(qū),系統(tǒng)全局區(qū)(SGA)由幾部分內(nèi)存區(qū)域組成: 共享池 數(shù)據(jù)塊高速緩沖區(qū) 重做日志緩沖區(qū) 有兩個(gè)可選擇的內(nèi)存結(jié)構(gòu)能配置在系統(tǒng)全局區(qū)內(nèi): 大型池 JAVA池,系

4、統(tǒng)全局區(qū),系統(tǒng)全局區(qū)分配大小上限由SGA_MAX_SIZE參數(shù)決定. 系統(tǒng)全局區(qū)分配原則依賴其中的組件: 分配鄰近的虛擬內(nèi)存 大小基于SGA_MAX_SIZE,共享存儲區(qū),用來存儲最近最多執(zhí)行的SQL語句和最近最多使用的數(shù)據(jù)定義. 它由兩個(gè)主要的內(nèi)存存結(jié)構(gòu)組成: 庫緩沖區(qū) 數(shù)據(jù)字典緩沖區(qū) 大小由參數(shù)SHARED_POOL_SIZE決定.,ALTER SYSTEM SET SHARED_POOL_SIZE = 64M;,庫緩存區(qū),庫緩沖區(qū)存儲最近使用的SQL和PL/SQL語句信息: 它能夠使普遍使用的語句能夠共享 通過LRU算法進(jìn)行管理 由兩種結(jié)構(gòu)組成: 共享SQL 區(qū)域 共享 PL/SQL 區(qū)

5、域 其中各自的大小由共享池內(nèi)部指定,數(shù)據(jù)字典緩沖區(qū),數(shù)據(jù)字典緩沖區(qū)是數(shù)據(jù)庫里最經(jīng)常使用的對象定義的集合. 它包括數(shù)據(jù)文件名、表、索引、列、用戶權(quán)限和其它數(shù)據(jù)庫對象等信息. 在解析期間,服務(wù)器進(jìn)程會查找數(shù)據(jù)字典獲取允許接入的關(guān)聯(lián)對象信息. 緩存數(shù)據(jù)字典信息在內(nèi)存區(qū)能提高查詢數(shù)據(jù)的響應(yīng)時(shí)間. 它的大小由共享池的大小決定.,數(shù)據(jù)塊高速緩沖區(qū),數(shù)據(jù)塊高速緩沖區(qū)儲存以前從數(shù)據(jù)文件中取出過的數(shù)據(jù)塊的拷貝信息. 當(dāng)你得到或修改數(shù)據(jù)時(shí),它能使性能得到提高. 它通過LRU算法進(jìn)行管理. 由DB_BLOCK_SIZE決定大小.,Database buffer cache,數(shù)據(jù)塊高速緩沖區(qū),由獨(dú)立的子緩存組成: D

6、B_CACHE_SIZE DB_KEEP_CACHE_SIZE DB_RECYCLE_CACHE_SIZE 數(shù)據(jù)庫緩沖區(qū)可以動態(tài)的改變尺寸. DB_CACHE_ADVICE 可以設(shè)置以收集統(tǒng)計(jì)信息用來預(yù)測不同的緩沖大小,ALTER SYSTEM SET DB_CACHE_SIZE = 96M;,重做日志緩沖區(qū),重做日志緩沖區(qū)記錄數(shù)據(jù)塊的所有變化. 首要目的是恢復(fù). 記錄的信息可用來重做改變. 尺寸大小由LOG_BUFFER定義.,Redo log buffer cache,大型池,大型池是在SGA內(nèi)一種可選擇的存貯區(qū)域,只配置在共享服務(wù)器環(huán)境中. 能減輕在共享池的負(fù)擔(dān). 用在UGA、備份和恢復(fù)

7、等操作中. 不使用 LRU 列表算法. 大小由 LARGE_POOL_SIZE決定.,ALTER SYSTEM SET LARGE_POOL_SIZE = 64M;,Java 區(qū),Java 區(qū)是為了解開Java命令: 如果安裝并使用 Java 是必需的. 在數(shù)據(jù)庫表格中,它存貯的方式非常像PL/SQL . 它的尺寸由JAVA_POOL_SIZE 參數(shù)決定.,User process,程序全局區(qū),PGA是為每個(gè)用戶進(jìn)程連接Oracle數(shù)據(jù)庫分配的區(qū)域,Stack space,Session information sort area, cursor information,SGA,Shared

8、SQL areas,SGA,PGA Dedicated server Shared server,Server process,Shared SQL areas,Stack space,sort area, cursor information,進(jìn)程結(jié)構(gòu),Oracle進(jìn)程是一種程序,依賴它要求信息的類型,執(zhí)行一系列的步驟或者實(shí)施一項(xiàng)具體的任務(wù). 用戶進(jìn)程 : 當(dāng)數(shù)據(jù)庫用戶要求連接到 Oracle 服務(wù)器時(shí)開始啟動. 服務(wù)器進(jìn)程 : 連接 Oracle 實(shí)例,當(dāng)用戶建立一個(gè)會話時(shí)開始啟動. 后臺進(jìn)程 : Oracle 實(shí)例啟動即可用.,用戶進(jìn)程,用戶進(jìn)程是要求 Oracle 服務(wù)器交互的一種進(jìn)程

9、: 它必須首先建立一個(gè)連接. 不直接和 Oracle 服務(wù)器交互.,Database user,Server process,User process,Connection established,服務(wù)進(jìn)程,服務(wù)進(jìn)程是直接和 Oracle 服務(wù)器交互的一段程序. 它響應(yīng)用戶要求,向服務(wù)器發(fā)起呼叫并返回結(jié)果給用戶. 可用專用服務(wù)器模式,也可用共享服務(wù)器模式創(chuàng)建對話.,后臺進(jìn)程,保持物理和內(nèi)存結(jié)構(gòu)的關(guān)系. 必須的后臺進(jìn)程 DBWn PMON CKPT LGWR SMON RECO 可選擇的后臺進(jìn)程 ARCn LMON Snnn QMNn LMDn CJQ0 Pnnn LCKn Dnnn,數(shù)據(jù)庫復(fù)寫

10、器,DBWn 開始寫: 檢查點(diǎn)執(zhí)行 臟塊上限數(shù)到達(dá) 緩存區(qū)沒有自由空間 超時(shí) 連接RAC要求 表空間脫機(jī) 表空間只讀 清空和刪除表 表空間開始備份,Database,Instance,SGA,DBWn,Redo log buffer,日志復(fù)寫器,LGWR 開始寫: 提交時(shí) 三分之一緩沖區(qū)滿的時(shí)候 當(dāng)有1MB日志的時(shí)候 每三秒 在DBWn寫之前,Control files,Data files,Redo log files,LGWR,Database,Instance,SGA,SMON,系統(tǒng)監(jiān)控進(jìn)程,責(zé)任: 實(shí)例恢復(fù): 回滾日志文件中 的改變信息 打開數(shù)據(jù)庫,讓用戶進(jìn)入 回滾未提交的事務(wù) 每三秒

11、接合空閑空間 回收臨時(shí)段,Control files,Data files,Redo log files,Instance,SGA,SMON,Database,進(jìn)程監(jiān)控器,處理失敗后進(jìn)行清理: 回滾事務(wù) 釋放鎖 釋放其它資源 重啟死的dispatchs,PGA area,Instance,SGA,DBWn,LGWR,CKPT,Control files,Data files,Redo log files,檢查點(diǎn),負(fù)責(zé): 給 DBWn 發(fā)信號 修改數(shù)據(jù)文件塊頭 修改控制文件信息,歸檔進(jìn)程(ARCn),可選擇的后臺進(jìn)程 當(dāng)ARCHIVELOG模式被設(shè)置時(shí)自動歸檔聯(lián)機(jī)重做日志文件 保存所有數(shù)據(jù)庫變化

12、,Control files,Data files,Redo log files,Archived Redo log files,ARCn,邏輯結(jié)構(gòu),Oracle體系的邏輯結(jié)構(gòu)描述了數(shù)據(jù)庫的物理空間怎樣運(yùn)用,包括表空間、段、片區(qū)和塊.,Tablespace,RAC方式,原理結(jié)構(gòu)圖,RAC方式,優(yōu)點(diǎn) 良好的可伸縮性 高可用性 先進(jìn)的Cache Fusion技術(shù) 降低硬件成本 切換時(shí)間短 缺點(diǎn) 管理復(fù)雜 對網(wǎng)絡(luò)有較高要求,HOTSTANDBY(雙機(jī)熱備)方式,原理結(jié)構(gòu)圖,HOTSTANDBY(雙機(jī)熱備)方式,優(yōu)點(diǎn) 管理較為簡單 運(yùn)行較為穩(wěn)定 缺點(diǎn) 切換時(shí)間較長 在系統(tǒng)切換的過程中,客戶端與服務(wù)器之

13、間的數(shù)據(jù)庫連接會中斷,需重新連接 備用機(jī)閑置,不能實(shí)現(xiàn)負(fù)載均衡,總結(jié),通過這部分課程的學(xué)習(xí),您應(yīng)該已經(jīng)了解: 解釋數(shù)據(jù)庫文件 : 數(shù)據(jù)文件、控制文件、聯(lián)機(jī)重做日志. 解釋系統(tǒng)全局區(qū)內(nèi)存結(jié)構(gòu): 數(shù)據(jù)塊高速緩沖區(qū)、共享池、重做日志緩沖區(qū). 解釋主要的后臺進(jìn)程: DBWn, LGWR, CKPT, PMON, SMON, 和 ARCn 雙機(jī)模式:RAC/HOT STANDBY,管理表空間和數(shù)據(jù)文件,目標(biāo),通過這部分課程的學(xué)習(xí),您將了解以下內(nèi)容 : 數(shù)據(jù)庫的邏輯結(jié)構(gòu) 創(chuàng)建表空間 改變表空間的大小 為臨時(shí)段分配空間 改變表空間的狀態(tài) 改變表空間的存儲參數(shù)設(shè)置,概觀,Control files,Data

14、files,Redo log files,Database,Database,邏輯上,物理上,Tablespace,Data file,OS block,Oracle block,Segment,Extent,數(shù)據(jù)庫的存儲層次,系統(tǒng)和非系統(tǒng)表空間,系統(tǒng)表空間: 隨著數(shù)據(jù)庫創(chuàng)建被創(chuàng)建 包含數(shù)據(jù)字典信息 包含系統(tǒng)回滾段 非系統(tǒng)表空間: 不同的segments分開存放(如:回滾段, 臨時(shí)段, 應(yīng)用數(shù)據(jù) ) 控制分配給用戶對象的空間容量,表空間的管理,本地管理的表空間 : 自由擴(kuò)展信息被記錄在本身的位圖中 位圖中的每一位都對應(yīng)一個(gè)數(shù)據(jù)塊或一組數(shù)據(jù)塊 位圖中的標(biāo)志位顯示數(shù)據(jù)塊使用或未使用狀態(tài)信息 字典管

15、理的表空間: 缺省的表空間管理方式 自由擴(kuò)展信息被記錄在數(shù)據(jù)字典中,本地管理的表空間,簡化了數(shù)據(jù)字典中的內(nèi)容 空間分配和回收不產(chǎn)生回滾信息 沒有接合鄰近extents的要求,CREATE TABLESPACE userdata DATAFILE /u01/oradata/userdata01.dbf SIZE 500M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 256K;,字典管理的表空間,Extents 在數(shù)據(jù)字典中管理 每個(gè)存儲在表空間的segments都可以有不同的存儲參數(shù)設(shè)置 有鄰近接合extents的要求,CREATE TABLESPACE userd

16、ata DATAFILE /u01/oradata/userdata01.dbf SIZE 500M EXTENT MANAGEMENT DICTIONARY DEFAULT STORAGE ( initial 1M NEXT 1M );,回滾段表空間,用來存儲回滾段信息 不能包含其它對象 Extents 本地管理 在創(chuàng)建時(shí)僅僅能使用 DATAFILE and EXTENT MANAGEMENT 條件,CREATE UNDO TABLESPACE undo1 DATAFILE /u01/oradata/undo101.dbf SIZE 40M;,臨時(shí)表空間,用來做排序操作 不能包含固定的對象

17、最好使用本地表空間管理,CREATE TEMPORARY TABLESPACE temp TEMPFILE /u01/oradata/temp01.dbf SIZE 500M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 10M;,缺省臨時(shí)表空間的限制,直到新的缺省表空間被使用時(shí)才能刪除 不能下線. 不能將缺省的臨時(shí)表空間修改成永久表空間,刪除表空間,DROP TABLESPACE userdata INCLUDING CONTENTS AND DATAFILES;,從數(shù)據(jù)字典中刪除表空間信息 通過 AND DATAFILES條件可在操作系統(tǒng)上刪除表空間的數(shù)據(jù)文件:

18、,改變表空間的大小,增加數(shù)據(jù)文件 改變數(shù)據(jù)文件大小: 自動 手動,app_data_02.dbf,app_data_01.dbf,app_data_03.dbf,100M,100M,200M,100M,Tablespace APP_DATA,app_data_02.dbf,app_data_01.dbf,app_data_03.dbf,100M,100M,200M,200M,app_data_04.dbf,手動改變數(shù)據(jù)文件大小,ALTER DATABASE DATAFILE /u03/oradata/userdata02.dbf RESIZE 200M;,100M,Tablespace APP

19、_DATA,Tablespace APP_DATA,app_data_02.dbf,app_data_01.dbf,app_data_03.dbf,100M,在表空間中增加一個(gè)數(shù)據(jù)文件,ALTER TABLESPACE app_data ADD DATAFILE /u01/oradata/userdata03.dbf SIZE 200M;,移動數(shù)據(jù)文件(修改表空間),表空間必須為下線狀態(tài)。 目標(biāo)數(shù)據(jù)文件必須存在.,ALTER TABLESPACE userdata RENAME DATAFILE /u01/oradata/userdata01.dbf TO /u01/oradata/userd

20、ata01.dbf;,獲取表空間信息,表空間信息: DBA_TABLESPACES V$TABLESPACE 數(shù)據(jù)文件信息: DBA_DATA_FILES V$DATAFILE 臨時(shí)文件信息: DBA_TEMP_FILES V$TEMPFILE,總結(jié),通過這部分內(nèi)容的學(xué)習(xí),您應(yīng)該已經(jīng)了解: 怎樣使用表空間分開存放數(shù)據(jù) 改變表空間大小: 增加數(shù)據(jù)文件 擴(kuò)展數(shù)據(jù)文件 使用本地管理表空間 使用臨時(shí)表空間,56,練習(xí),練習(xí)包括以下幾個(gè)主題: 創(chuàng)建表空間 修改表空間,管理重做日志文件,目標(biāo),通過這部分課程的學(xué)習(xí),您將了解以下內(nèi)容 : 在線重做日志文件的作用 在線重做日志文件的結(jié)構(gòu) 控制日志文件切換和檢查

21、點(diǎn)執(zhí)行 多路復(fù)用在線重做日志文件,使用重做日志文件,重做日志文件記錄數(shù)據(jù)所有的修改信息并提供一種介質(zhì)失敗時(shí)的恢復(fù)機(jī)制. 重做日志文件分組管理. 一個(gè)Oracle數(shù)據(jù)庫要求至少有兩組重做日志文件. 組中每個(gè)日志文件被稱作一個(gè)組成員.,Redo log files,Database,重做日志文件的結(jié)構(gòu),Group 2,Group 3,Group 1,Member,Disk 1,Disk 2,Member,Member,Member,Member,Member,重做日志文件怎樣工作,重做日志文件循環(huán)使用 當(dāng)一個(gè)重做日志文件充滿時(shí), LGWR 將日志寫入到下個(gè)重做日志組. 這個(gè)被叫做日志切換 檢查點(diǎn)執(zhí)

22、行動作被觸發(fā) 相關(guān)信息寫入控制文件,強(qiáng)迫日志切換并執(zhí)行檢查點(diǎn),日志切換能使用命令 ALTER SYSTEM SWITCH LOGFILE. 檢查點(diǎn)被迫使執(zhí)行: 設(shè)置 FAST_START_MTTR_TARGET 參數(shù) ALTER SYSTEM CHECKPOINT 命令,ALTER SYSTEM CHECKPOINT;,log2b.rdo,log1b.rdo,增加在線重做日志組,Group 1,Group 2,Group 3,ALTER DATABASE ADD LOGFILE GROUP 3 ($HOME/ORADATA/u01/log3a.rdo, $HOME/ORADATA/u02/lo

23、g3b.rdo) SIZE 1M;,log3b.rdo,log2a.rdo,log3a.rdo,log1a.rdo,增加在線重做日志組成員,ALTER DATABASE ADD LOGFILE MEMBER $HOME/ORADATA/u04/log1c.rdo TO GROUP 1, $HOME/ORADATA/u04/log2c.rdo TO GROUP 2, $HOME/ORADATA/u04/log3c.rdo TO GROUP 3;,log2a.rdo,log1a.rdo,Group 1,Group 2,Group 3,log3a.rdo,刪除在線重做日志組,ALTER DATABA

24、SE DROP LOGFILE GROUP 3;,log1a.rdo,log1a.rdo,刪除在線重做日志組成員,ALTER DATABASE DROP LOGFILE MEMBER $HOME/ORADATA/u04/log3c.rdo;,log2c.rdo,log1c.rdo,Group 1,Group 2,log1b.rdo,log1b.rdo,清空, 重新指定位置或更名在線重做日志文件,清空在線重做日志文件: 重新指定位置、更名在線重做日志文件能通過增加新日志文件,刪除舊日志文件代替.,ALTER DATABASE CLEAR LOGFILE $HOME/ORADATA/u01/log

25、2a.rdo;,獲取日志組及其成員信息,通過查詢下列數(shù)據(jù)字典獲取日志組及其成員信息 V$LOG V$LOGFILE,歸檔日志文件,裝滿的在線重做日志文件能被歸檔. 歸檔在線重做日志文件兩種優(yōu)勢: 恢復(fù):一套一致的數(shù)據(jù)文件完整備份與在線重做日志文件、歸檔日志文件一起能保證所有已經(jīng)提交的事務(wù)恢復(fù)到先前狀態(tài). 備份: 能在數(shù)據(jù)庫打開的情況下進(jìn)行. 缺省數(shù)據(jù)庫以非歸檔模式創(chuàng)建.,歸檔日志文件,歸檔日志文件能通過ARCn或手工SQL歸檔得到. 控制文件中記錄有歸檔日志名稱、日志序列號,在線日志文件成功歸檔時(shí)最高、最低的SCN. 一個(gè)裝滿的在線日志文件需要在檢查點(diǎn)發(fā)生、在線日志文件被ARCn歸檔完成以后才

26、能重新使用,否則等待. 歸檔日志文件能多路復(fù)用.,總結(jié),通過這部分課程的學(xué)習(xí),您應(yīng)該已經(jīng)了解: 在線重做日志文件的作用 怎樣獲取在線重做日志文件信息 控制日志切換和檢查點(diǎn)執(zhí)行 多路復(fù)用管理多個(gè)在線重做日志文件,練習(xí),這部分練習(xí)包括以下主題: 創(chuàng)建和增加重做日志文件組及其成員. 刪除重做日志文件組及其成員.,管 理 用 戶 和 權(quán) 限,目標(biāo),通過這部分課程的學(xué)習(xí),您將了解以下內(nèi)容: 創(chuàng)建新的數(shù)據(jù)庫用戶 修改和刪除存在的數(shù)據(jù)庫用戶 監(jiān)控已存在用戶的信息 識別系統(tǒng)和對象權(quán)限 授予和回收權(quán)限,數(shù)據(jù)庫模式,模式是一種命名的對象集合 一個(gè)用戶被創(chuàng)建,對應(yīng)的模式就被創(chuàng)建 一個(gè)用戶僅僅對應(yīng)一個(gè)模式 用戶名其實(shí)

27、就等同于模式名,創(chuàng)建用戶所涉及內(nèi)容,確定用戶需要將對象存儲在哪個(gè)表空間 決定每個(gè)表空間中該用戶的使用限額. 指派缺省表空間和臨時(shí)表空間. 開始創(chuàng)建一個(gè)用戶. 賦予權(quán)限和角色給用戶.,創(chuàng)建用戶: 數(shù)據(jù)庫級鑒別,設(shè)定初始口令:,CREATE USER aaron IDENTIFIED BY soccer DEFAULT TABLESPACE data TEMPORARY TABLESPACE temp QUOTA 15m ON data PASSWORD EXPIRE;,刪除用戶,使用 CASCADE 條件刪除用戶及其用戶中包含的所有對象. 當(dāng)前正連接到Oracle服務(wù)器的用戶不能被刪除,DROP

28、 USER aaron;,DROP USER aaron CASCADE;,獲取用戶相關(guān)信息,獲取用戶相關(guān)信息能通過查詢以下數(shù)據(jù)字典. DBA_USERS DBA_TS_QUOTAS,系統(tǒng)權(quán)限,有100多種 ANY 關(guān)鍵字 是指用戶在任何模式下都具有 GRANT 命令由于授予權(quán)限 REVOKE 命令回收權(quán)限,系統(tǒng)權(quán)限舉例,Category Examples INDEX CREATE ANY INDEX ALTER ANY INDEX DROP ANY INDEX TABLE CREATE TABLE CREATE ANY TABLE ALTER ANY TABLE DROP ANY TABLE

29、 SELECT ANY TABLE UPDATE ANY TABLE DELETE ANY TABLE SESSION CREATE SESSION ALTER SESSION RESTRICTED SESSION TABLESPACE CREATE TABLESPACE ALTER TABLESPACE DROP TABLESPACE UNLIMITED TABLESPACE,授予系統(tǒng)權(quán)限,GRANT CREATE SESSION TO emi;,GRANT CREATE SESSION TO emi WITH ADMIN OPTION;,回收系統(tǒng)權(quán)限,REVOKE CREATE TABLE

30、 FROM emi;,授予對象權(quán)限,GRANT EXECUTE ON dbms_output TO jeff;,GRANT UPDATE ON emi.customers TO jeff WITH GRANT OPTION;,回收對象權(quán)限,REVOKE SELECT ON emi.orders FROM jeff;,獲取權(quán)限信息,查詢數(shù)據(jù)字典 DBA_SYS_PRIVS SESSION_PRIVS DBA_TAB_PRIVS DBA_COL_PRIVS,總結(jié),通過這部分課程的學(xué)習(xí),您應(yīng)該已經(jīng)了解: 創(chuàng)建用戶時(shí)指定適當(dāng)?shù)目诹顧C(jī)制 控制用戶對空間的使用 控制系統(tǒng)和對象權(quán)限,練習(xí),這部分練習(xí)包括以下

31、主題: 創(chuàng)建用戶 顯示用戶在數(shù)據(jù)字典中的相關(guān)信息 移去用戶表空間配額,問題和解答,管理一個(gè)ORACLE實(shí)例,目標(biāo),通過這部分課程的學(xué)習(xí),您將了解以下內(nèi)容 : 創(chuàng)建和管理初始化參數(shù)文件 啟動和關(guān)閉實(shí)例 監(jiān)控和使用診斷文件,spfiledb01.ora,初始化參數(shù)文件,SQL CONNECT / AS SYSDBA SQL STARTUP,初始化參數(shù)文件,訪問實(shí)例的入口 存在兩種類型參數(shù): 顯性的: 在文件中有個(gè)入口 隱性的: 在文件中沒有入口,但被指派了缺省的值 在不同的環(huán)境下可使用不同的初始化文件優(yōu)化單個(gè)數(shù)據(jù)庫的執(zhí)行. 改變文件中參數(shù)設(shè)置并使其生效依賴使用的初始化參數(shù)文件類型; 靜態(tài)初始化參數(shù)

32、文件 PFILE 延續(xù)性初始化參數(shù)文件 SPFILE,PFILE initSID.ora,PFILE 是一個(gè)能被操作系統(tǒng)編輯器修改的文本文件. 手動對該文件進(jìn)行修改. 下次數(shù)據(jù)庫啟動修改才能生效. 它的缺省路徑是 $ORACLE_HOME/dbs.,PFILE 舉例,# Initialization Parameter File: initdb01.ora db_name = db01 instance_name = db01 control_files = ( /u03/oradata/db01/control01db01.ctl, /u03/oradata/db01/control02db

33、01.ctl) db_block_size = 4096 db_block_buffers = 500 shared_pool_size = 31457280 # 30M Shared Pool db_files = 1024 max_dump_file_size = 10240 background_dump_dest = /u05/oracle9i/admin/db01/bdump user_dump_dest = /u05/oracle9i/admin/db01/udump core_dump_dest = /u05/oracle9i/admin/db01/cdump undo_mana

34、gement = auto undo_tablespace = undtbs . . .,SPFILE spfileSID.ora,是一個(gè)不用重啟數(shù)據(jù)庫而能將改變生效的二進(jìn)制文件 保存在ORACLE服務(wù)器端 能通過ALTER SYSTEM 命令直接對參數(shù)進(jìn)行修改 能指定改變臨時(shí)在內(nèi)存中生效還是從現(xiàn)在開始永久生效 修改的值能被刪除重置到實(shí)例缺省的值,ALTER SYSTEM SET undo_tablespace = UNDO2;,97,創(chuàng)建 SPFILE,SPFILE能使用命令CREATE SPFILE命令從initSID.ora中創(chuàng)建,并且在數(shù)據(jù)庫開啟前或開啟后都能執(zhí)行,CREATE SPF

35、ILE FROM PFILE;,SPFILE 舉例,*.background_dump_dest=$ORACLE_HOME/admin/db01/bdump *.compatible=9.0.0 *.control_files=/u03/oradata/db01/ctrl01db01.ctl,/u03/oradata/db01/ctrl02db01.ctl *.core_dump_dest=$ORACLE_HOME/admin/db01/cdump *.db_block_buffers=500 *.db_block_size=4096 *.db_files=40 *.db_name=db01

36、*.instance_name=db01 *.remote_login_passwordfile=exclusive *.shared_pool_size=31457280 # 30M Shared Pool *.undo_management=AUTO db01.undo_tablespace=UNDOTBS01 db02.undo_tablespace=UNDOTBS02 . . .,啟動一個(gè)數(shù)據(jù)庫 NOMOUNT,OPEN,MOUNT,NOMOUNT,SHUTDOWN,實(shí)例啟動,STARTUP,SHUTDOWN,啟動一個(gè)數(shù)據(jù)庫 MOUNT,OPEN,MOUNT,NOMOUNT,SHUTD

37、OWN,控制文件打開,實(shí)例啟動,STARTUP,SHUTDOWN,啟動一個(gè)數(shù)據(jù)庫 OPEN,OPEN,MOUNT,NOMOUNT,SHUTDOWN,實(shí)例中控制文件描述的所有文件被打開,控制文件打開,實(shí)例啟動,STARTUP,SHUTDOWN,STARTUP 命令,STARTUP,啟動實(shí)例并打開數(shù)據(jù)庫:,STARTUP PFILE=$ORACLE_HOME/dbs/initdb01.ora,The ALTER DATABASE Command,改變數(shù)據(jù)庫的狀態(tài)(UNMOUNT TO MOUNT):,ALTER DATABASE db01 MOUNT;,打開數(shù)據(jù)庫:,ALTER DATABASE

38、db01 OPEN;,關(guān)閉 數(shù)據(jù)庫,關(guān)閉模式: NORMAL TRANSACTIONAL IMMEDIATE ABORT,A x x x x,T x x o o,I x x x o,關(guān)閉模式 允許新的接入 等待直到當(dāng)前的會話都結(jié)束 等待直到當(dāng)前的事務(wù)都結(jié)束 強(qiáng)制執(zhí)行 checkpoint 并關(guān)閉所有文件,N x o o o,YES,NO,x o,關(guān)閉對象,During a Shutdown Normal, Shutdown Transactional or Shutdown Immediate,一致性的數(shù)據(jù)庫 (干凈的數(shù)據(jù)庫),這種方式關(guān)閉: 數(shù)據(jù)塊高速緩沖區(qū)內(nèi)容寫入數(shù)據(jù)文件 未提交的事務(wù)回滾

39、 釋放資源,這之后重新啟動數(shù)據(jù)庫: 不用做實(shí)例恢復(fù),關(guān)閉對象,During a Shutdown Abort or Instance Failure or Startup Force,不一致的數(shù)據(jù)庫 (臟數(shù)據(jù)庫),這樣關(guān)閉: 已經(jīng)修改的數(shù)據(jù)塊緩沖區(qū)的內(nèi)容不寫入數(shù)據(jù)文件 未提交的事務(wù)不被回滾,這之后重新啟動數(shù)據(jù)庫: 改變的信息將被重新寫入重做日志文件 必須使用回滾段來回滾未提交的改變 釋放資源,通過檢查診斷文件來管理實(shí)例,診斷文件包含實(shí)例運(yùn)行過程中所遇到的重要的事件信息. 作為日常管理數(shù)據(jù)庫的基礎(chǔ),能為解決問題提供幫助. 存在以下幾種診斷文件: 警告日志文件(alertSID.log) 后臺跟蹤

40、文件 用戶跟蹤文件,警告日志文件,警告日志文件記錄了數(shù)據(jù)庫運(yùn)行中的一些操作命令和主要事件結(jié)果. 它被用來診斷日常數(shù)據(jù)庫運(yùn)行錯(cuò)誤信息. 每條都對應(yīng)有時(shí)間戳信息. 它所在路徑定義在 初始化參數(shù)BACKGROUND_DUMP_DEST中.,后臺跟蹤文件,后臺跟蹤文件記錄有被后臺進(jìn)程檢測到的錯(cuò)誤信息. 當(dāng)后臺進(jìn)程遇到錯(cuò)誤時(shí)才被創(chuàng)建 它所在路徑定義在 初始化參數(shù)BACKGROUND_DUMP_DEST中,用戶跟蹤文件,用戶跟蹤文件當(dāng)用戶進(jìn)程通過服務(wù)器進(jìn)程連接到Oracle服務(wù)器時(shí)產(chǎn)生。 一個(gè)用戶跟蹤文件包含跟蹤到的SQL執(zhí)行語句或用戶通訊錯(cuò)誤信息. 當(dāng)用戶會話過程中遇到錯(cuò)誤信息時(shí)產(chǎn)生. 它的路徑定義在

41、USER_DUMP_DEST中. 它的大小定義在 MAX_DUMP_FILE_SIZE中 ,缺省為10M.,打開或關(guān)閉用戶跟蹤,用戶跟蹤文件能在會話或?qū)嵗墑e使用下列命令、參數(shù)打開或關(guān)閉: 會話級別使用 ALTER SESSION 命令: ALTER SESSION SET SQL_TRACE = TRUE 會話級別也可以通過執(zhí)行DBMS 包: dbms_system.SET_SQL_TRACE_IN_SESSION 實(shí)例級別可通過設(shè)置初始化文件中的參數(shù): SQL_TRACE = TRUE,總結(jié),通過這部分內(nèi)容的學(xué)習(xí),您應(yīng)該了解: 創(chuàng)建和管理初始化參數(shù)文件 啟動和關(guān)閉實(shí)例、數(shù)據(jù)庫 監(jiān)控和使用診

42、斷文件,113,總結(jié)練習(xí),練習(xí)包括以下主題: 創(chuàng)建 SPFILE文件 通過不同的方式啟動和關(guān)閉數(shù)據(jù)庫,SQL*Plus使用介紹,目標(biāo),通過這部分課程的學(xué)習(xí),您將了解以下內(nèi)容 : 登錄到 SQL*Plus環(huán)境 編輯SQL 命令 SQL*Plus 命令格式化并輸出結(jié)果 結(jié)合腳本文件執(zhí)行,登錄到 SQL*Plus. 描述表的結(jié)構(gòu). 編輯SQL語句. 在SQL*Plus中執(zhí)行SQL. 保存或插入SQL語句到文件,SQL*Plus主要內(nèi)容,登錄到 SQL*Plus,從 Windows 環(huán)境: 通過命令行: sqlplus username/password database,Name Null? Typ

43、e - - - DEPARTMENT_ID NOT NULL NUMBER(4) DEPARTMENT_NAME NOT NULL VARCHAR2(30) MANAGER_ID NUMBER(6) LOCATION_ID NUMBER(4),顯示表的結(jié)構(gòu)內(nèi)容,SQL DESCRIBE departments,SQL*Plus 編輯命令,APPEND text CHANGE / old / new CHANGE / text / CLEAR BUFFER DEL DEL n DEL m n,SQL*Plus 編輯命令,INPUT INPUT text LIST LIST n LIST m n

44、RUN n n text 0 text,1 SELECT last_name 2* FROM employees,SQL LIST,1* SELECT last_name,SQL A , job_id,1* SELECT last_name, job_id,1 SELECT last_name, job_id 2* FROM employees,使用 LIST, n, and APPEND,SQL 1,SQL L,1* SELECT * from employees,SQL L,1* SELECT * from departments,SQL c/employees/departments,1

45、* SELECT * from departments,使用 CHANGE 命令,SQL L,SQL*Plus 文件命令,SAVE filename GET filename START filename filename EDIT filename SPOOL filename EXIT,Created file my_query,SQL START my_query,SQL L 1 SELECT last_name, manager_id, department_id 2* FROM employees SQL SAVE my_query,使用 SAVE 和START 命令,LAST_NA

46、ME MANAGER_ID DEPARTMENT_ID - - - King 90 Kochhar 100 90 . 20 rows selected.,小結(jié),SQL*Plus 環(huán)境下: 執(zhí)行SQL 語句 編輯SQL 語句 格式化輸出 與腳本文件交互,邏輯備份恢復(fù)簡介,目標(biāo),邏輯備份的概念 Oracle 數(shù)據(jù)庫邏輯備份使用工具 Oracle 數(shù)據(jù)庫邏輯備份形式,用途,物理備份的補(bǔ)充 不同版本數(shù)據(jù)庫的遷移 不同平臺數(shù)據(jù)庫的遷移,與物理備份的比較,占用較小的空間 更為靈活,有四種方式 需要確認(rèn)字符集,備份工具,備份工具 EXPORT (使用命令EXP) 恢復(fù)工具 IMPORT(使用命令I(lǐng)MP),備

47、份形式,全庫備份 按用戶備份 按表備份 表空間備份,Oracle Export 和 Import 工具作用,歸檔歷史數(shù)據(jù) 存儲表的定義 在不同平臺及版本間轉(zhuǎn)換數(shù)據(jù) 在不同數(shù)據(jù)庫間移植表空間,運(yùn)行EXPORT工具的方法,以交互式對話的方式 命令行 參數(shù)文件 通過OEM啟動,全數(shù)據(jù)庫模式 Tables definitions Tables data Grants Indexes Tables constraints,Export 模式,表模式 Table definitions Table data (all or selected rows) Owners table grants Owners

48、 table indexes Table constraints,用戶模式 Tables definitions Tables data Owners grants Owners indexes Tables constraints,表空間模式 Table definitions Grants Indexes Table constraints Triggers,Export 命令,語法,舉例,exp hr/hr TABLES=(employees,departments) rows=y file=exp1.dmp,exp keyword = (value, value2, ,valuen),

49、exp system/manager OWNER=hr direct=y file=expdat.dmp,exp system/manager FULL=y inctype=cumulative file=expcum1.dmp,exp system/manager TRANSPORT_TABLESPACE=y TABLESPACES=(ts_emp) log=ts_emp.log,使用 Import 工具恢復(fù),獲取建表定義 從一個(gè)有效的輸出文件中獲取數(shù)據(jù) 如有用戶錯(cuò)誤,可以從相應(yīng)文件中恢復(fù),Import 模式,模式 描述 Table 獲取指定的表. User 獲取一個(gè)用戶的所有對象 Tabl

50、espace 獲取一個(gè)表空間的所有對象 Full Database 獲取輸出文件的所有對象,Import 工具的命令行,語法,舉例,imp hr/hr TABLES=(employees,departments) rows=y file=exp1.dmp,imp keyword = value or keyword = (value, value2, value n),imp system/manager FROMUSER=hr file=exp2.dmp,imp system/manager TRANSPORT_TABLESPACE=y TABLESPACES=ts_employees,Im

51、port 處理順序,新表產(chǎn)生 導(dǎo)入數(shù)據(jù) 建立索引 導(dǎo)入觸發(fā)器 導(dǎo)入一致性約束 導(dǎo)入其余形式的索引,國際化語言支持,Export 文件定義字符集 Import 工具把原字符集轉(zhuǎn)化為本數(shù)據(jù)庫的字符集 多字節(jié)的字符集必須對應(yīng)相同特征的字符集,總結(jié)和練習(xí),Export 和 Import 工具的使用 Export 和 Import 工具概念和結(jié)構(gòu) 執(zhí)行 Export 和 Import 操作 使用Export 和 Import 的一些原則,數(shù)據(jù)庫的日常檢查,數(shù)據(jù)庫的日常檢查,檢查數(shù)據(jù)庫狀態(tài) 確認(rèn)數(shù)據(jù)庫是否在open狀態(tài),正常提供服務(wù)。 oracle% sqlplus /as sysdba SQL sele

52、ct status, instance_role from v$instance; STATUS INSTANCE_ROLE - - OPEN PRIMARY_INSTANCE,數(shù)據(jù)庫的日常檢查,數(shù)據(jù)庫版本檢查 數(shù)據(jù)庫應(yīng)該打了最新的patchset; 8i要求是; 9i要求是或者更高的補(bǔ)丁版本 。 SQLselect * from v$version;,查看SGA區(qū)域 SGA區(qū)各項(xiàng)buffer之和應(yīng)該小于系統(tǒng)物理內(nèi)存的一半 檢查數(shù)據(jù)庫SGA區(qū): SQLshow sga 檢查系統(tǒng)物理內(nèi)存: Solaris: $ /usr/sbin/prtconf |grep -i M

53、emory size HP: $ grep Physical /var/adm/syslog/syslog.log AIX: $ /usr/sbin/lsattr -E -l sys0 -a realmem,數(shù)據(jù)庫的日常檢查,回滾段競爭檢查 8i:返回值應(yīng)該低于2%。如果該值過高,8i需要手工建立更多的回滾段。 SQL select The average of waits/gets is | round(sum(waits) / sum(gets) * 100,2)|% From v$rollstat; 9i:Nospace值應(yīng)該為0。如果持續(xù)存在非零值,建議增加回滾表空間的大 SQLsel

54、ect distinct nospaceerrcnt as nospace From v$undostat Where begin_timesysdate-(1/12);,數(shù)據(jù)庫的日常檢查,查看日志文件 數(shù)據(jù)庫運(yùn)行時(shí),可以通過查詢v$log_history來觀察log switch的切換時(shí)間。 推薦聯(lián)機(jī)日志最好是業(yè)務(wù)非高峰期每小時(shí)切換一次,業(yè)務(wù)高峰期20分鐘左右切換一次。 SQLselect to_char(first_time,yyyy-mm-dd hh24:mi:ss) change_time from v$log_history; CHANGE_TIME - 2004-04-06 10:

55、02:52 2004-04-06 10:10:45 2004-04-06 10:17:01,數(shù)據(jù)庫的日常檢查,查看表空間 查看各個(gè)表空間所占的大小,剩余空間,使用空間百分比等信息 特別是當(dāng)業(yè)務(wù)表空間的剩余空間低于50M或者使用空間百分比大于90%時(shí),需要考慮增加表空間的大小。 SQL select a.tablespace_name, a.bytes totalbytes, sum(b.bytes) freebytes from dba_data_files a, dba_free_space b where a.file_id = b.file_id group by a.tablespac

56、e_name, a.bytes ; TABLESPACE_NAME TOTALBYTES FREEBYTES - CWMLITE 20971520 11141120,數(shù)據(jù)庫的日常檢查,檢查job狀態(tài) Broken列應(yīng)該為N;如果Broken列為Y,檢查oracle告警日志,分析job失敗的原因。解決后運(yùn)行:exec dbms_job.run(:job); SQLselect job,what,to_char(next_date,yyyy/mm/dd hh24:mi:ss),broken,failures from dba_jobs;,數(shù)據(jù)庫的日常檢查,查看數(shù)據(jù)庫連接用戶 查看當(dāng)前數(shù)據(jù)庫連接的用

57、戶進(jìn)程的具體信息,包括連接的數(shù)據(jù)庫用戶名,機(jī)器名,運(yùn)行的程序名,進(jìn)程狀態(tài)。 select username,machine,program,status from v$session where osuser oracle; USERNAME MACHINE PROGRAM STATUS - - - - CORPRING CHINAMENGWEI INACTIVE SYSTEM CHINAH36922 dbsnmp.exe INACTIVE,數(shù)據(jù)庫的日常檢查,Network 配置,目標(biāo),監(jiān)聽管理 本地服務(wù)名配置 處理簡單的連接問題 數(shù)據(jù)庫故障緊急處理,監(jiān)聽進(jìn)程,listener.ora,Listener,客戶端,服務(wù)端,tnsnames.ora,sqlnet.ora,配置 listener.ora 文件,listener.ora 的缺省配置: Listener name LISTENER Port 1521 Protocols TCP/IP and IPC SID name 缺省實(shí)例 Host name 缺省主機(jī)名,listener.ora 例子,1. LISTENER = 2.

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論