新聞中心
Oracle數(shù)據(jù)庫是一種常用的商業(yè)關系型數(shù)據(jù)庫。它是由Oracle公司開發(fā),用于管理大量數(shù)據(jù)和應用程序。Oracle數(shù)據(jù)庫在企業(yè)級應用程序、大型數(shù)據(jù)倉庫以及云應用領域廣泛使用。本文將深入了解Oracle數(shù)據(jù)庫的描述、架構與應用。

成都創(chuàng)新互聯(lián)網(wǎng)站建設由有經(jīng)驗的網(wǎng)站設計師、開發(fā)人員和項目經(jīng)理組成的專業(yè)建站團隊,負責網(wǎng)站視覺設計、用戶體驗優(yōu)化、交互設計和前端開發(fā)等方面的工作,以確保網(wǎng)站外觀精美、做網(wǎng)站、成都網(wǎng)站制作易于使用并且具有良好的響應性。
一、描述
1.1 發(fā)展歷史
Oracle數(shù)據(jù)庫最初是由Larry Ellison、Bob Miner和Ed Oates于1979年創(chuàng)建的,最初稱為“Relational Software Inc.”(RSI),并在1982年更名為“Oracle Corporation”。它是之一個完全支持SQL的商業(yè)數(shù)據(jù)庫系統(tǒng)。自1985年以來,Oracle一直是世界上更受歡迎的數(shù)據(jù)庫之一,同類數(shù)據(jù)庫軟件還有Microsoft SQL Server、IBM DB2和MySQL等。
1.2 特點
Oracle數(shù)據(jù)庫具有以下特點:
1.2.1 數(shù)據(jù)安全性高:Oracle數(shù)據(jù)處理和存儲為企業(yè)提供高度保證的數(shù)據(jù)安全性和保密性。
1.2.2 吞吐量高:Oracle數(shù)據(jù)庫的高效性能使其能夠處理海量數(shù)據(jù),并且穩(wěn)定性更強。
1.2.3 支持高并發(fā):Oracle數(shù)據(jù)庫支持高并發(fā)訪問,使得多個用戶可以同時訪問數(shù)據(jù)庫,而不會出現(xiàn)響應延遲或死鎖等問題。
1.2.4 完全可擴展性:可以輕松地加入新的節(jié)點,不會影響現(xiàn)有操作。
1.2.5 數(shù)據(jù)一致性:Oracle數(shù)據(jù)庫支持事務,而且事務管理十分完善。它可以確保在同一事務中執(zhí)行的所有操作都是一致的,因此可以保持數(shù)據(jù)的一致性。
1.2.6 支持各種操作系統(tǒng):Oracle支持多種操作系統(tǒng),包括Windows、Linux、Solaris和X等。
1.3 版本
Oracle數(shù)據(jù)庫有多個版本,其中最常用的是Oracle Database 12c和Oracle Database 11g。當前,Oracle公司正在努力推出更先進的Oracle Database 18c。
二、架構
2.1 Oracle架構概述
Oracle數(shù)據(jù)庫具有三層架構,分別為客戶端、Oracle實例和數(shù)據(jù)庫。它的總體架構如下圖所示:

2.2 Oracle實例
Oracle實例是指由Oracle數(shù)據(jù)庫管理系統(tǒng)(DBMS)創(chuàng)建和管理的進程和內(nèi)存結構,其中包括SGA(System Global Area)、PGA(Process Global Area)和應用程序進程等。Oracle實例是訪問Oracle數(shù)據(jù)庫的主要通道。
2.3 數(shù)據(jù)庫
Oracle數(shù)據(jù)庫是一組有機結合的數(shù)據(jù)文件或表空間,用于存儲數(shù)據(jù)。它包括用戶數(shù)據(jù)、元數(shù)據(jù)、日志數(shù)據(jù)、備份數(shù)據(jù)等。Oracle數(shù)據(jù)庫是客戶端與Oracle實例的主要聯(lián)系點。
三、應用
3.1 數(shù)據(jù)庫管理
管理Oracle數(shù)據(jù)庫是數(shù)據(jù)庫管理員(DBA)必須完成的主要任務之一。在Oracle中,DBA可以使用Oracle Enterprise Manager(OEM)或SQL命令行界面(CLI)管理數(shù)據(jù)庫。通過OEM可以輕松地監(jiān)視數(shù)據(jù)庫狀態(tài),配置參數(shù),執(zhí)行備份和還原等任務。同時,它具有故障檢測和解決的功能。
3.2 數(shù)據(jù)庫開發(fā)
在Oracle數(shù)據(jù)庫中進行開發(fā)需要使用PL/SQL(Procedural Language/Structured Query Language)語言。PL/SQL支持變量、控制結構、函數(shù)和存儲過程等編程元素。其中最重要的是存儲過程。存儲過程可以在數(shù)據(jù)庫內(nèi)部執(zhí)行,對于數(shù)據(jù)的操作具有更高的效率和安全性。
3.3 數(shù)據(jù)庫查詢
對于數(shù)據(jù)查詢,Oracle數(shù)據(jù)庫使用SQL(Structured Query Language)語言。SQL語言是一種關系型數(shù)據(jù)庫的通用查詢語言。在數(shù)據(jù)處理方面,SQL是非常強大的。它可以對多個表進行聯(lián)接,并支持復雜的查詢操作。
3.4 數(shù)據(jù)庫備份與恢復
數(shù)據(jù)庫備份和恢復是數(shù)據(jù)庫管理員必須掌握的技能。Oracle提供了多種方式來備份和恢復數(shù)據(jù)庫。其中,常見的方式有完全備份、增量備份和日志備份。在恢復方面,Oracle提供了FLASHBACK和RMAN(Recovery Manager)等功能,可以在數(shù)據(jù)庫發(fā)生故障時恢復數(shù)據(jù)。
3.5 數(shù)據(jù)庫性能調(diào)優(yōu)
對于數(shù)據(jù)庫的性能調(diào)優(yōu),Oracle提供了多種工具和技術。DBA可以使用OEM或SQL命令行界面監(jiān)測數(shù)據(jù)庫性能和狀態(tài),并采取相應的措施來提高數(shù)據(jù)庫響應速度和吞吐量。
Oracle數(shù)據(jù)庫是一款功能強大的商業(yè)關系型數(shù)據(jù)庫。在應用領域廣泛使用,它具有高度保密性、高吞吐量、高并發(fā)能力、良好的擴展性和一致性等優(yōu)勢。Oracle架構是三層結構,包括客戶端、Oracle實例和數(shù)據(jù)庫。在Oracle數(shù)據(jù)庫中進行開發(fā)需要使用PL/SQL語言,而對于數(shù)據(jù)查詢,則需要使用SQL語言。數(shù)據(jù)庫備份和恢復是DBA必須掌握的技能之一,而性能調(diào)優(yōu)則需要使用多種工具和技術來提高數(shù)據(jù)庫性能和響應速度。
相關問題拓展閱讀:
- oracle數(shù)據(jù)庫的結構是什么?
- Oracle數(shù)據(jù)庫有什么特點?
oracle數(shù)據(jù)庫的結構是什么?
Oracle數(shù)據(jù)庫的體系結構包括四個方面:數(shù)據(jù)庫的物理結構、邏輯結構、內(nèi)存結構及進程。
1. 物理結構
物理數(shù)據(jù)庫結構是由構成數(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ù)據(jù)庫進行恢復。名字通常為Log*.dbf格式,如:Log1CIMS.dbf,Log2CIMS.dbf 。
控制文件(Control File)
每個Oracle數(shù)據(jù)庫都有相應的控制文件,它們是較小的二進制文件,用于記錄數(shù)據(jù)庫的物理結構,如:數(shù)據(jù)庫名、數(shù)據(jù)庫的數(shù)據(jù)文件和日志文件的名字和位置等信息。用于打開、存取數(shù)據(jù)庫。名字通常為Ctrl*ctl 格式,如Ctrl1CIMS.ctl。
配置文件
配置文件記錄Oracle數(shù)據(jù)庫運行時的一些重要參數(shù),如:數(shù)據(jù)塊的大小,內(nèi)存結構的配置等。名字通常為init*.ora 格式,如:initCIMS.ora 。
2 邏輯結構
Oracle數(shù)據(jù)庫的邏輯結構描述了數(shù)據(jù)庫從邏輯上如何來存儲數(shù)據(jù)庫中的數(shù)據(jù)。邏輯結構包括表空間、段、區(qū)、數(shù)據(jù)塊和模式對象。數(shù)據(jù)庫的邏輯結構將支配一個數(shù)據(jù)庫如何使用系統(tǒng)的物理空間.模式對象及其之間的聯(lián)系則描述了關系數(shù)據(jù)庫之間的設計.
一個數(shù)據(jù)庫從邏輯上說是由一個或多個表空間所組成,表空間是數(shù)據(jù)庫中物理編組的數(shù)據(jù)倉庫,每一個表空間是由段(segment)組成,一個段是由一組區(qū)(extent)所組成,一個區(qū)是由一組連續(xù)的數(shù)據(jù)庫塊(database block)組成,而一個歷顫核數(shù)據(jù)庫塊對應硬盤上的一個或多個物理塊。一個表空間存放一個或多個數(shù)據(jù)庫的物理文件(即數(shù)據(jù)文件).一個數(shù)據(jù)庫中的數(shù)據(jù)被邏輯地存儲在表空間上。
表空間(tablespace)
Oracle數(shù)據(jù)庫被劃分為一個或多個稱為表空間的邏輯結構,它包括兩類表空間,System表空間和非System表空間,其中,System表空間是安裝數(shù)據(jù)庫時自動建立的,它包含數(shù)據(jù)庫的全部數(shù)據(jù)字典,存儲過程、包、函數(shù)和觸洞兆發(fā)器的定義以及系統(tǒng)回滾段。除此之外,還能包含用戶數(shù)據(jù)。。
一個表空間包含許多段,每個段有一些可以不連續(xù)的區(qū)組成,每個區(qū)由一組連續(xù)的數(shù)據(jù)塊組成,數(shù)據(jù)塊是數(shù)據(jù)庫進行操作的最小單位。
每個表空間對應一個或多個數(shù)據(jù)文件,每個數(shù)據(jù)文件只能屬于一個表空間。
數(shù)據(jù)庫塊(database block)
數(shù)據(jù)庫塊也稱邏輯塊或ORACLE塊,它對應磁盤上一個或多個物理塊,它的大小由初始化參數(shù)db-block-size(在文件init.ora中)決定,典型的大小是2k。Pckfree 和pctused 兩個參數(shù)用來優(yōu)化數(shù)據(jù)塊空間的使用。
區(qū)(extent)
區(qū)是由一組連續(xù)的數(shù)據(jù)塊所組成的數(shù)據(jù)庫存儲空間分配的邏輯單位。
段(segment)
段是一個或多個不連續(xù)的區(qū)的,它包括一個表空間內(nèi)特定邏輯結構的所有數(shù)據(jù),段不能跨表空間存放。Oracle數(shù)據(jù)庫包括數(shù)據(jù)段、索引段、臨時段、回滾段等。
模式對象(schema object)
Oracle數(shù)據(jù)庫的模式對象包括表、視圖、序列、同意詞、索引、觸發(fā)器、存儲.過程等,關于它們將重點在后面章節(jié)介紹。
3.Oracle Server系統(tǒng)進程與內(nèi)存結構
當在計算機服務器上啟動Oracle數(shù)據(jù)庫后,稱服務器上啟動了一個Oracle實例(Instance)。ORACLE 實例(Instance)是存取和控制數(shù)據(jù)庫的軟件機制,它包含系統(tǒng)全局區(qū)(SGA)和ORACLE進程兩部分。SGA是系統(tǒng)為實例分配的一組共享內(nèi)存緩沖區(qū),用于存放數(shù)據(jù)庫實例和控制信息,以實現(xiàn)對數(shù)據(jù)庫中數(shù)據(jù)的治理和操作。
進程是操作系統(tǒng)中一個極為重要的概念。一個進程執(zhí)行一組操作,完成一個特定的任務.對ORACLE數(shù)據(jù)庫治理系統(tǒng)來說,進程由用戶進程、服務器進程和后臺進程所組成。
當用戶運行一個應用程序時,系統(tǒng)就為它建立一個用戶進程。服務器進程處理與之相連的用戶進程的請求,它與用戶進程相通訊,為相連的用戶進程的ORACLE請求服務。
為了提高系統(tǒng)性能,更好地實現(xiàn)多用戶功能,ORACLE還在系統(tǒng)后臺啟動一些后臺進程,用于數(shù)據(jù)庫數(shù)據(jù)操作。
系統(tǒng)進程的后臺進程主要包括:
ON 系統(tǒng)監(jiān)控進程:(system monitor)負責完成自動實例恢復和回收分類(sort)表空間。
PMON 進程監(jiān)控進程:(PRocess monitor)實現(xiàn)用戶進程故障恢復、清理內(nèi)存區(qū)和釋放該進程所需資源等。
DBWR 數(shù)據(jù)庫寫進程:數(shù)據(jù)庫緩沖區(qū)的治理進程。
在它的治理下,數(shù)據(jù)庫緩沖區(qū)中總保持有一定數(shù)量的自由緩沖塊,以確保用戶進程總能找到供其使用的自由緩沖塊。
LGWR 日志文件寫進程:是日志緩沖區(qū)的治理進程,負責把日志緩沖區(qū)中的日志項寫入磁盤中的日志文件上。每個實例只有一個LGWR進程。
ARCH 歸檔進程:(archiver process)把已經(jīng)填滿的在線日志文件拷貝到一個指定的存儲設備上。僅當日志文件組開關(switch)出現(xiàn)時,才進行ARCH操作。ARCH不是必須的,而只有當自動歸檔可使用或者當手工歸檔請求時才發(fā)出。
RECO 恢復進程:是在具有分布式選項時使用的一個進程,主要用于解決引用分布式事務時所出現(xiàn)的故障。它只能在答應分布式事務的系統(tǒng)中出現(xiàn)。
LCKn 封鎖進程:用于并行服務器系統(tǒng),主要完成實例之間的封鎖。
內(nèi)存結構(SGA)
SGA是Oracle為一個實例分配的一組共享內(nèi)存緩沖區(qū),它包含該實例的數(shù)據(jù)和控制信息。SGA在實例啟動時被自動分配,當實例關閉時被收回。數(shù)據(jù)庫的所有數(shù)據(jù)操作都要通過SGA來進行。
SGA中內(nèi)存根據(jù)存放信息的不同,可以分為如下幾個區(qū)域:Buffer Cache:存放數(shù)據(jù)庫中數(shù)據(jù)庫塊的拷貝。它是由一組緩沖塊所組成,這些緩沖塊為所有與該實例相鏈接的用戶進程所共享。緩沖塊的數(shù)目由初始化參數(shù)DB_BLOCK_BUFFERS確定,緩沖塊的大小由初始化參數(shù)DB_BLOCK_SIZE確定。大的數(shù)據(jù)塊可提高查詢速度。它由DBWR操作。
b. 日志緩沖區(qū)Redo Log Buffer:存放數(shù)據(jù)操作的更改信息。它們以日志項(redo entry)的形式存放在日志緩沖區(qū)中。當需要進行數(shù)據(jù)庫恢復時,日志項用于重構或回滾對數(shù)據(jù)庫所做的變更。日志緩沖區(qū)的大小由初始化參數(shù)LOG_BUFFER確定。大的日志緩沖區(qū)可減少日志文件I/O的次數(shù)。后臺進程LGWR將日志緩沖區(qū)中的信息寫入磁盤的日志文件中,可啟動ARCH后臺進程進行日志信息歸檔。
c. 共享池Shared Pool:包含用來處理的SQL語句信息。它包含共享SQL區(qū)和數(shù)據(jù)字典存儲區(qū)。共享SQL區(qū)包含執(zhí)行特定的SQL語句所用的信息。數(shù)據(jù)字典區(qū)用于存放數(shù)據(jù)字典,它為所有用戶進程所共享。
Cursors:一些內(nèi)存指針,執(zhí)行待處理的SQL語句
其他信息區(qū):除了上述幾個信息區(qū)外,還包括一些進程之間的通訊信息(如封鎖信息);在多線索服務器配置下,還有一些程序全局區(qū)的信息,請求隊列和響應隊列等。 本文來自:
Oracle數(shù)據(jù)庫有什么特點?
oracle 優(yōu)勢很多,大部分銀行保險電信大部分是用oracle處理的
優(yōu)勢主要 有
1、處理速度快,非常快
2、安全級別高。支持快閃以及完美的恢復,即使硬件壞了 也可以恢復到故障發(fā)前的1s
3、幾臺數(shù)據(jù)庫做集群數(shù)據(jù)庫,可以巖哪宴做到幾秒s以內(nèi)故障轉(zhuǎn)移,而且數(shù)據(jù)物理完全一致,現(xiàn)在緩弊集群一直是更優(yōu)秀的解決方案,對于銀行保險沒有其他太多的選項粗銀{數(shù)據(jù)不丟,快速切換,負載均衡}
4、網(wǎng)格控制,以及 數(shù)據(jù)倉庫方面 也非常強大
對了免費 以及 開源的 言論 都是錯誤的。。。oracle產(chǎn)品及服務都是付費的,而且價格不菲。比其他數(shù)據(jù)庫要貴,物有所值。oracle不是開源的。不過可以在redhat 或者其他開源操作系統(tǒng)上安裝。
mysql在sun沒被oracle收購是開源的,免費的,之后oracle公司打算 把mysql打造成不開源,收費模式的。
1、完整的數(shù)據(jù)管理功能:
1)數(shù)據(jù)的大量性
2)數(shù)據(jù)的保存的持久性
3)數(shù)據(jù)的共享性
4)數(shù)據(jù)的可靠性
2、完備關系的產(chǎn)品:
1)信息準則—關系型DBMS的所有信息都應在邏輯上用一種方法虧鄭,即表中的值顯式地表示;
2)保證訪問的準則
3)視圖更新準則—只要形成視圖的表中的數(shù)據(jù)變化了,相應的視圖中的數(shù)據(jù)同時變化
4)數(shù)據(jù)物理性和邏輯性獨立準則
3、分布式處理功能:
ORACLE數(shù)據(jù)庫自第5版起就提供了分布式處理能力皮寬,到第7版就有比較完善的分布式數(shù)據(jù)庫功能了,一個ORACLE分布式數(shù)據(jù)庫由oraclerdbms、sql*Net、SQL*CONNECT和其他非ORACLE的關系型產(chǎn)品構成。
4、用ORACLE能輕松燃空亮的實現(xiàn)數(shù)據(jù)倉庫的操作。
關于oracle 數(shù)據(jù)庫描述的介紹到此就結束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關注本站。
香港服務器選創(chuàng)新互聯(lián),2H2G首月10元開通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)互聯(lián)網(wǎng)服務提供商,擁有超過10年的服務器租用、服務器托管、云服務器、虛擬主機、網(wǎng)站系統(tǒng)開發(fā)經(jīng)驗。專業(yè)提供云主機、虛擬主機、域名注冊、VPS主機、云服務器、香港云服務器、免備案服務器等。
本文名稱:深入了解Oracle數(shù)據(jù)庫描述、架構與應用(oracle數(shù)據(jù)庫描述)
分享網(wǎng)址:http://fisionsoft.com.cn/article/djscioj.html


咨詢
建站咨詢
