新聞中心
【導(dǎo)語】Oracle數(shù)據(jù)庫是世界上更流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),對于IT行業(yè)的從業(yè)人員來說,具有重要的學(xué)習(xí)價(jià)值。掌握Oracle數(shù)據(jù)庫知識點(diǎn)可以幫助我們快速高效地管理數(shù)據(jù)。

一、Oracle數(shù)據(jù)庫的基礎(chǔ)概念
Oracle數(shù)據(jù)庫是一種關(guān)系型數(shù)據(jù)庫,其數(shù)據(jù)存儲在表中,表之間通過外鍵聯(lián)系。Oracle數(shù)據(jù)庫有多個(gè)實(shí)例,每個(gè)實(shí)例包含了一組進(jìn)程和用于訪問和管理數(shù)據(jù)的內(nèi)存結(jié)構(gòu)。
Oracle數(shù)據(jù)庫也有自己的SQL語言,可以進(jìn)行數(shù)據(jù)查詢、添加、修改和刪除。同時(shí)還支持存儲過程、觸發(fā)器等高級特性。
二、Oracle數(shù)據(jù)庫的安裝和配置
在實(shí)際使用Oracle數(shù)據(jù)庫之前,需要先進(jìn)行安裝和配置。
Oracle數(shù)據(jù)庫的安裝非常復(fù)雜,需要準(zhǔn)備一定的環(huán)境,例如操作系統(tǒng)、內(nèi)存等。同時(shí)還需要安裝多個(gè)組件,例如實(shí)例、監(jiān)聽器等。
在安裝過程中,需要按照指南進(jìn)行操作,并根據(jù)自己的需求進(jìn)行配置。
三、Oracle數(shù)據(jù)庫的數(shù)據(jù)管理
Oracle數(shù)據(jù)庫管理主要包括以下方面:
1、創(chuàng)建和刪除表、索引等數(shù)據(jù)庫對象。
2、對數(shù)據(jù)進(jìn)行查詢、添加、修改和刪除。
3、對數(shù)據(jù)庫的安全進(jìn)行管理,例如用戶管理和角色管理。
4、對數(shù)據(jù)庫進(jìn)行備份和恢復(fù)。
5、對性能進(jìn)行調(diào)優(yōu),例如索引的優(yōu)化和SQL語句的優(yōu)化。
四、Oracle數(shù)據(jù)庫的高級應(yīng)用
1、存儲過程和觸發(fā)器
Oracle數(shù)據(jù)庫支持存儲過程和觸發(fā)器。存儲過程可以將多個(gè)SQL語句封裝在一起,進(jìn)行批量操作,提高效率。觸發(fā)器可以在數(shù)據(jù)庫對象上進(jìn)行事件驅(qū)動(dòng)式的操作,例如在某個(gè)表中添加一條記錄時(shí)自動(dòng)執(zhí)行一些操作。
2、分區(qū)表
Oracle數(shù)據(jù)庫支持分區(qū)表,可以將一個(gè)大表分割成多個(gè)小的分區(qū)表。分區(qū)表可以大大減少查詢時(shí)間、索引大小和備份時(shí)間等。
3、集群
Oracle數(shù)據(jù)庫還支持集群,可以通過多個(gè)物理服務(wù)器共同處理數(shù)據(jù)庫請求,提高數(shù)據(jù)庫的可用性和處理能力。
五、
Oracle數(shù)據(jù)庫是一種強(qiáng)大的關(guān)系型數(shù)據(jù)庫,在實(shí)際應(yīng)用中有著廣泛的應(yīng)用。掌握Oracle數(shù)據(jù)庫的知識點(diǎn)可以幫助我們更好地管理和處理數(shù)據(jù),提高工作效率和準(zhǔn)確性。同時(shí),Oracle數(shù)據(jù)庫的高級特性可以讓我們更好地實(shí)現(xiàn)大規(guī)模數(shù)據(jù)管理、高可用性和高性能。
成都網(wǎng)站建設(shè)公司-創(chuàng)新互聯(lián),建站經(jīng)驗(yàn)豐富以策略為先導(dǎo)10多年以來專注數(shù)字化網(wǎng)站建設(shè),提供企業(yè)網(wǎng)站建設(shè),高端網(wǎng)站設(shè)計(jì),響應(yīng)式網(wǎng)站制作,設(shè)計(jì)師量身打造品牌風(fēng)格,熱線:028-86922220誰能把Oracle的體系結(jié)構(gòu)用通俗的語言講解
1、 ORACLE 實(shí)例――包括內(nèi)存結(jié)構(gòu)與后臺進(jìn)程 2、 ORACLE 數(shù)據(jù)庫――物理操作系統(tǒng)氏此文件的 3、 了解內(nèi)存結(jié)構(gòu)的組成 4、 了解后臺進(jìn)程的作用
1、 Oracle 實(shí)例――包括內(nèi)存結(jié)構(gòu)與后臺進(jìn)程
2、 Oracle 數(shù)據(jù)庫――物理操作系統(tǒng)文件的
3、 了解內(nèi)存結(jié)構(gòu)的組成
4、 了解后臺進(jìn)程的作用
5、 了解數(shù)據(jù)庫的物理文件
6、 解釋各種邏輯結(jié)構(gòu)
一、Oracle實(shí)例
1、Oracle 實(shí)例
System Global Area(SGA) 和 Background Process 稱為數(shù)據(jù)庫的實(shí)例。
2、Oracle 數(shù)據(jù)庫
一系列物理文件的(數(shù)據(jù)文件,控制文件,聯(lián)機(jī)日志,參數(shù)文件等)
3、系統(tǒng)全局共享區(qū)System Global Area(SGA)
System Global Area 是一塊巨大的共享內(nèi)存區(qū)域,他被看做是Oracle 數(shù)據(jù)庫的一個(gè)大緩沖池,這里的數(shù)據(jù)可以被Oracle的各個(gè)進(jìn)程共用。其大小可以通過如下語句查看:
SQL> select * from v$sga;
NAME VALUE
—
Fixed Size 39816
Variable Size
Database Buffers 1.049E+09
Redo Buffers
更詳細(xì)的信息可以參考V$sgastat、V$buffer_pool
主要包括以下幾個(gè)部分:
a、 共享池(Shared pool)
共享池是SGA中最關(guān)鍵的內(nèi)存片段,特別是在性能和可伸縮茄核豎性上。一個(gè)太小的共享池會扼殺性能,使系統(tǒng)停止,太大的共享池也會有同樣的顫大效果,將會消耗大量的CPU來管理這個(gè)共享池。不正確的使用共享池只會帶來災(zāi)難。共享池主要又可以分為以下兩個(gè)部分:
SQL語句緩沖(Library Cache)
當(dāng)一個(gè)用戶提交一個(gè)SQL語句,Oracle會將這句SQL進(jìn)行分析(parse),這個(gè)過程類似于編譯,會耗費(fèi)相對較多的時(shí)間。在分析完這個(gè)SQL,Oracle會把他的分析結(jié)果給保存在Shared pool的Library Cache中,當(dāng)數(shù)據(jù)庫第二次執(zhí)行該SQL時(shí),Oracle自動(dòng)跳過這個(gè)分析過程,從而減少了系統(tǒng)運(yùn)行的時(shí)間。這也是為什么之一次運(yùn)行的SQL 比第二次運(yùn)行的SQL要慢一點(diǎn)的原因。
oracle 數(shù)據(jù)庫 是什么結(jié)構(gòu)
Oracle數(shù)據(jù)庫的體系結(jié)構(gòu)包括四個(gè)方面:數(shù)據(jù)庫的物理結(jié)構(gòu)、邏輯結(jié)構(gòu)、內(nèi)存結(jié)構(gòu)及進(jìn)程。
1. 物理結(jié)構(gòu)
物理數(shù)據(jù)庫結(jié)構(gòu)是由構(gòu)成數(shù)據(jù)庫肢掘的操作系統(tǒng)文件所決定,Oracle數(shù)據(jù)庫文件包括:
數(shù)據(jù)文件(Data File)
數(shù)據(jù)文件用來存儲數(shù)據(jù)庫中的全部數(shù)據(jù),例如數(shù)據(jù)庫表中的數(shù)據(jù)和索引數(shù)據(jù).通常以為*.dbf格式,例如:userCIMS.dbf 。
日志文件(Redo Log File)
日志文件用于記錄數(shù)據(jù)庫所做的全部變更(如增加、刪除、修改)、以便在系統(tǒng)發(fā)生故障時(shí),用它對數(shù)據(jù)庫進(jìn)行恢復(fù)。名字通常為Log*.dbf格式,如:Log1CIMS.dbf,Log2CIMS.dbf 。
控制文件(Control File)
每個(gè)Oracle數(shù)據(jù)庫都有相應(yīng)的控制文件,它們是較小的二進(jìn)制文件,用于記錄數(shù)據(jù)庫的物理結(jié)構(gòu),如:數(shù)據(jù)庫名、數(shù)據(jù)庫的數(shù)據(jù)文件和日志文件的名字和位置等信息。用于打開、存取數(shù)據(jù)庫。名字通常為Ctrl*ctl 格式,如Ctrl1CIMS.ctl。
配置文件
配置文件記錄Oracle數(shù)據(jù)庫運(yùn)行時(shí)的一些重要參數(shù),如:數(shù)據(jù)塊的大小,內(nèi)存結(jié)構(gòu)的配置等。名字通常為init*.ora 格式,如:initCIMS.ora 。
2 邏輯結(jié)構(gòu)
Oracle數(shù)據(jù)庫的邏輯結(jié)構(gòu)描述了數(shù)據(jù)庫從邏輯上如何來存儲數(shù)據(jù)庫中的數(shù)據(jù)。邏輯結(jié)構(gòu)包括表空間、段、區(qū)、數(shù)據(jù)塊和模式對象。數(shù)據(jù)庫的邏輯結(jié)構(gòu)將支配一個(gè)數(shù)據(jù)庫如何使用系統(tǒng)的物理空間.模式對象及其之間的聯(lián)系則描述了關(guān)系數(shù)據(jù)庫之間的設(shè)計(jì).
一個(gè)數(shù)據(jù)庫從邏輯上說是由一個(gè)或多個(gè)表空間所組成,表空間是數(shù)據(jù)庫中物理編組的數(shù)據(jù)倉庫,每一個(gè)表空間是由段(segment)組成,一個(gè)段是由一組區(qū)(extent)所組成,一個(gè)區(qū)是由一組連續(xù)的數(shù)據(jù)庫塊(database block)組成,而一個(gè)歷顫核數(shù)據(jù)庫塊對應(yīng)硬盤上的一個(gè)或多個(gè)物理塊。一個(gè)表空間存放一個(gè)或多個(gè)數(shù)據(jù)庫的物理文件(即數(shù)據(jù)文件).一個(gè)數(shù)據(jù)庫中的數(shù)據(jù)被邏輯地存儲在表空間上。
表空間(tablespace)
Oracle數(shù)據(jù)庫被劃分為一個(gè)或多個(gè)稱為表空間的邏輯結(jié)構(gòu),它包括兩類表空間,System表空間和非System表空間,其中,System表空間是安裝數(shù)據(jù)庫時(shí)自動(dòng)建立的,它包含數(shù)據(jù)庫的全部數(shù)據(jù)字典,存儲過程、包、函數(shù)和觸洞兆發(fā)器的定義以及系統(tǒng)回滾段。除此之外,還能包含用戶數(shù)據(jù)。。
一個(gè)表空間包含許多段,每個(gè)段有一些可以不連續(xù)的區(qū)組成,每個(gè)區(qū)由一組連續(xù)的數(shù)據(jù)塊組成,數(shù)據(jù)塊是數(shù)據(jù)庫進(jìn)行操作的最小單位。
每個(gè)表空間對應(yīng)一個(gè)或多個(gè)數(shù)據(jù)文件,每個(gè)數(shù)據(jù)文件只能屬于一個(gè)表空間。
數(shù)據(jù)庫塊(database block)
數(shù)據(jù)庫塊也稱邏輯塊或ORACLE塊,它對應(yīng)磁盤上一個(gè)或多個(gè)物理塊,它的大小由初始化參數(shù)db-block-size(在文件init.ora中)決定,典型的大小是2k。Pckfree 和pctused 兩個(gè)參數(shù)用來優(yōu)化數(shù)據(jù)塊空間的使用。
區(qū)(extent)
區(qū)是由一組連續(xù)的數(shù)據(jù)塊所組成的數(shù)據(jù)庫存儲空間分配的邏輯單位。
段(segment)
段是一個(gè)或多個(gè)不連續(xù)的區(qū)的,它包括一個(gè)表空間內(nèi)特定邏輯結(jié)構(gòu)的所有數(shù)據(jù),段不能跨表空間存放。Oracle數(shù)據(jù)庫包括數(shù)據(jù)段、索引段、臨時(shí)段、回滾段等。
模式對象(schema object)
Oracle數(shù)據(jù)庫的模式對象包括表、視圖、序列、同意詞、索引、觸發(fā)器、存儲.過程等,關(guān)于它們將重點(diǎn)在后面章節(jié)介紹。
3.Oracle Server系統(tǒng)進(jìn)程與內(nèi)存結(jié)構(gòu)
當(dāng)在計(jì)算機(jī)服務(wù)器上啟動(dòng)Oracle數(shù)據(jù)庫后,稱服務(wù)器上啟動(dòng)了一個(gè)Oracle實(shí)例(Instance)。ORACLE 實(shí)例(Instance)是存取和控制數(shù)據(jù)庫的軟件機(jī)制,它包含系統(tǒng)全局區(qū)(SGA)和ORACLE進(jìn)程兩部分。SGA是系統(tǒng)為實(shí)例分配的一組共享內(nèi)存緩沖區(qū),用于存放數(shù)據(jù)庫實(shí)例和控制信息,以實(shí)現(xiàn)對數(shù)據(jù)庫中數(shù)據(jù)的治理和操作。
進(jìn)程是操作系統(tǒng)中一個(gè)極為重要的概念。一個(gè)進(jìn)程執(zhí)行一組操作,完成一個(gè)特定的任務(wù).對ORACLE數(shù)據(jù)庫治理系統(tǒng)來說,進(jìn)程由用戶進(jìn)程、服務(wù)器進(jìn)程和后臺進(jìn)程所組成。
當(dāng)用戶運(yùn)行一個(gè)應(yīng)用程序時(shí),系統(tǒng)就為它建立一個(gè)用戶進(jìn)程。服務(wù)器進(jìn)程處理與之相連的用戶進(jìn)程的請求,它與用戶進(jìn)程相通訊,為相連的用戶進(jìn)程的ORACLE請求服務(wù)。
為了提高系統(tǒng)性能,更好地實(shí)現(xiàn)多用戶功能,ORACLE還在系統(tǒng)后臺啟動(dòng)一些后臺進(jìn)程,用于數(shù)據(jù)庫數(shù)據(jù)操作。
系統(tǒng)進(jìn)程的后臺進(jìn)程主要包括:
ON 系統(tǒng)監(jiān)控進(jìn)程:(system monitor)負(fù)責(zé)完成自動(dòng)實(shí)例恢復(fù)和回收分類(sort)表空間。
PMON 進(jìn)程監(jiān)控進(jìn)程:(PRocess monitor)實(shí)現(xiàn)用戶進(jìn)程故障恢復(fù)、清理內(nèi)存區(qū)和釋放該進(jìn)程所需資源等。
DBWR 數(shù)據(jù)庫寫進(jìn)程:數(shù)據(jù)庫緩沖區(qū)的治理進(jìn)程。
在它的治理下,數(shù)據(jù)庫緩沖區(qū)中總保持有一定數(shù)量的自由緩沖塊,以確保用戶進(jìn)程總能找到供其使用的自由緩沖塊。
LGWR 日志文件寫進(jìn)程:是日志緩沖區(qū)的治理進(jìn)程,負(fù)責(zé)把日志緩沖區(qū)中的日志項(xiàng)寫入磁盤中的日志文件上。每個(gè)實(shí)例只有一個(gè)LGWR進(jìn)程。
ARCH 歸檔進(jìn)程:(archiver process)把已經(jīng)填滿的在線日志文件拷貝到一個(gè)指定的存儲設(shè)備上。僅當(dāng)日志文件組開關(guān)(switch)出現(xiàn)時(shí),才進(jìn)行ARCH操作。ARCH不是必須的,而只有當(dāng)自動(dòng)歸檔可使用或者當(dāng)手工歸檔請求時(shí)才發(fā)出。
RECO 恢復(fù)進(jìn)程:是在具有分布式選項(xiàng)時(shí)使用的一個(gè)進(jìn)程,主要用于解決引用分布式事務(wù)時(shí)所出現(xiàn)的故障。它只能在答應(yīng)分布式事務(wù)的系統(tǒng)中出現(xiàn)。
LCKn 封鎖進(jìn)程:用于并行服務(wù)器系統(tǒng),主要完成實(shí)例之間的封鎖。
內(nèi)存結(jié)構(gòu)(SGA)
SGA是Oracle為一個(gè)實(shí)例分配的一組共享內(nèi)存緩沖區(qū),它包含該實(shí)例的數(shù)據(jù)和控制信息。SGA在實(shí)例啟動(dòng)時(shí)被自動(dòng)分配,當(dāng)實(shí)例關(guān)閉時(shí)被收回。數(shù)據(jù)庫的所有數(shù)據(jù)操作都要通過SGA來進(jìn)行。
SGA中內(nèi)存根據(jù)存放信息的不同,可以分為如下幾個(gè)區(qū)域:Buffer Cache:存放數(shù)據(jù)庫中數(shù)據(jù)庫塊的拷貝。它是由一組緩沖塊所組成,這些緩沖塊為所有與該實(shí)例相鏈接的用戶進(jìn)程所共享。緩沖塊的數(shù)目由初始化參數(shù)DB_BLOCK_BUFFERS確定,緩沖塊的大小由初始化參數(shù)DB_BLOCK_SIZE確定。大的數(shù)據(jù)塊可提高查詢速度。它由DBWR操作。
b. 日志緩沖區(qū)Redo Log Buffer:存放數(shù)據(jù)操作的更改信息。它們以日志項(xiàng)(redo entry)的形式存放在日志緩沖區(qū)中。當(dāng)需要進(jìn)行數(shù)據(jù)庫恢復(fù)時(shí),日志項(xiàng)用于重構(gòu)或回滾對數(shù)據(jù)庫所做的變更。日志緩沖區(qū)的大小由初始化參數(shù)LOG_BUFFER確定。大的日志緩沖區(qū)可減少日志文件I/O的次數(shù)。后臺進(jìn)程LGWR將日志緩沖區(qū)中的信息寫入磁盤的日志文件中,可啟動(dòng)ARCH后臺進(jìn)程進(jìn)行日志信息歸檔。
c. 共享池Shared Pool:包含用來處理的SQL語句信息。它包含共享SQL區(qū)和數(shù)據(jù)字典存儲區(qū)。共享SQL區(qū)包含執(zhí)行特定的SQL語句所用的信息。數(shù)據(jù)字典區(qū)用于存放數(shù)據(jù)字典,它為所有用戶進(jìn)程所共享。
Cursors:一些內(nèi)存指針,執(zhí)行待處理的SQL語句
其他信息區(qū):除了上述幾個(gè)信息區(qū)外,還包括一些進(jìn)程之間的通訊信息(如封鎖信息);在多線索服務(wù)器配置下,還有一些程序全局區(qū)的信息,請求隊(duì)列和響應(yīng)隊(duì)列等。 本文來自:
orcale數(shù)據(jù)庫知識點(diǎn)的介紹就聊到這里吧,感謝你花時(shí)間閱讀本站內(nèi)容,更多關(guān)于orcale數(shù)據(jù)庫知識點(diǎn),掌握orcale數(shù)據(jù)庫知識點(diǎn),輕松實(shí)現(xiàn)高效數(shù)據(jù)管理,誰能把Oracle的體系結(jié)構(gòu)用通俗的語言講解,oracle 數(shù)據(jù)庫 是什么結(jié)構(gòu)的信息別忘了在本站進(jìn)行查找喔。
成都創(chuàng)新互聯(lián)科技有限公司,經(jīng)過多年的不懈努力,公司現(xiàn)已經(jīng)成為一家專業(yè)從事IT產(chǎn)品開發(fā)和營銷公司。廣泛應(yīng)用于計(jì)算機(jī)網(wǎng)絡(luò)、設(shè)計(jì)、SEO優(yōu)化、關(guān)鍵詞排名等多種行業(yè)!
分享題目:掌握orcale數(shù)據(jù)庫知識點(diǎn),輕松實(shí)現(xiàn)高效數(shù)據(jù)管理(orcale數(shù)據(jù)庫知識點(diǎn))
文章起源:http://www.5511xx.com/article/dpchige.html


咨詢
建站咨詢
