日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
深入探究:Oracle數(shù)據(jù)庫的物理構成解析(oracle數(shù)據(jù)庫的物理構成)

Oracle數(shù)據(jù)庫作為目前全球應用最廣泛的關系型數(shù)據(jù)庫之一,其穩(wěn)定性和性能表現(xiàn)備受好評。然而,對于初學者或是新手而言,Oracle的物理構成卻是一個較為陌生的概念。本文將探究oracle數(shù)據(jù)庫的物理構成,給讀者提供更全面的了解。

物理存儲結構

Oracle數(shù)據(jù)庫的物理構成首先包括整個系統(tǒng)的物理存儲結構,該系統(tǒng)主要由數(shù)據(jù)文件、控制文件和重做日志文件三部分構成。

1. 數(shù)據(jù)文件

Oracle數(shù)據(jù)庫中的一切信息都被保存在數(shù)據(jù)文件中。數(shù)據(jù)文件在創(chuàng)建數(shù)據(jù)庫時被生成,可以設置其大小、位置、增量等相關屬性。一個數(shù)據(jù)文件通常包含多個數(shù)據(jù)庫塊,這些數(shù)據(jù)庫塊是基本的物理存儲單位,其大小可以在創(chuàng)建數(shù)據(jù)文件時設置。

2. 控制文件

控制文件是一個特別的數(shù)據(jù)文件,它記錄著整個數(shù)據(jù)庫的概要信息,包括當前正在使用的數(shù)據(jù)文件、重做日志文件等,是Oracle數(shù)據(jù)庫管理中至關重要的部分。

3. 重做日志文件

重做日志文件主要記錄了因為崩潰等原因而丟失的數(shù)據(jù),也記錄了一些事務相關信息,是數(shù)據(jù)庫實現(xiàn)回滾和重做的機制。重做日志文件會在一定時間間隔內自動切換。

物理存儲結構的關系

數(shù)據(jù)文件、控制文件和重做日志文件之間是有一定的關系的??刂莆募涗浟水斍罢谑褂玫臄?shù)據(jù)文件和重做日志文件的狀態(tài),數(shù)據(jù)文件和重做日志文件不可分開,二者相互作用來保證數(shù)據(jù)在持久化存儲時的真實性。

物理數(shù)據(jù)庫對象

物理數(shù)據(jù)庫對象主要指的是數(shù)據(jù)庫中存儲數(shù)據(jù)的方式,它接下來又分為了五個具體的分類:表空間、段、區(qū),以及數(shù)據(jù)塊和 Extent 兩個概念。

1. 表空間

表空間是實現(xiàn)數(shù)據(jù)物理存儲的,一個數(shù)據(jù)庫管理系統(tǒng)可以包含多個表空間,一個表空間可以包括多個數(shù)據(jù)文件,每個表空間可以用于存儲多個表、索引等對象。

2. 段

段是一個邏輯存儲單位, 每個段由行存儲單元組成。每個數(shù)據(jù)塊可以包含多個段,例特定情況下也可能出現(xiàn)一個段跨越多個數(shù)據(jù)塊的情況。

3. 區(qū)

區(qū)是段的邏輯組合,一個區(qū)可以包含多個段。區(qū)的大小與表空間的塊大小一致,一般而言一個區(qū)內的數(shù)據(jù)塊數(shù)量為8-1024。

4. 數(shù)據(jù)塊

數(shù)據(jù)塊是Oracle數(shù)據(jù)庫中最小的物理存儲單位,它的大小是可變的,但是一般而言為8k。在該數(shù)據(jù)塊中存放了一些具有一定語義的數(shù)據(jù),例如表、索引等。

5. Extent

Extent 是一個連續(xù)的數(shù)據(jù)塊,它的數(shù)量是可變的,并且存儲的數(shù)據(jù)也是相同類型的(例如表,索引等)。由于數(shù)據(jù)庫的數(shù)據(jù)是不斷變化的,因此Extent也可能隨著時間的推移而發(fā)生拆分、合并的情況。

物理對象之間的關系

物理數(shù)據(jù)庫中的各個對象之間也有著緊密聯(lián)系。例如,每個表空間可以包含多個段,每個段由數(shù)據(jù)塊組合而成,一個數(shù)據(jù)塊可以放置多條記錄,數(shù)據(jù)庫在讀取數(shù)據(jù)的過程中,是按照邏輯順序依次到各個表空間中的關聯(lián)對象上讀取的。

同樣,在數(shù)據(jù)操作的過程中,也就是針對數(shù)據(jù)的增刪改等操作, Oracle會將這些操作記錄在重做日志文件中,當數(shù)據(jù)庫因為崩潰等原因造成數(shù)據(jù)丟失時,就可以通過重做日志文件來恢復數(shù)據(jù)的完整性。

Oracle數(shù)據(jù)庫的物理構成是一個比較龐大、也比較復雜的體系結構,然而其中各個組成部分之間緊密相關。在日常使用Oracle數(shù)據(jù)庫時,理解其物理構成是非常有必要的。本文簡單介紹了Oracle數(shù)據(jù)庫的物理存儲結構和物理對象,以及它們之間的關系,希望能夠對讀者提供一些參考和幫助。

相關問題拓展閱讀:

  • Oracle中邏輯結構和物理結構,他們之間的關系是什么?

Oracle中邏輯結構和物理結構,他們之間的關系是什么?

1.1、物理結構:由構成數(shù)據(jù)庫的操作系統(tǒng)文件組成,它是從操作系統(tǒng)的角度來分析數(shù)據(jù)庫的組成,在操作系統(tǒng)中可以看得到的文件,也就是說它是數(shù)據(jù)庫在操作系統(tǒng)中的存儲位置。常見的物理結構包括:控制文件、數(shù)據(jù)文件、重作日志文件、歸檔日志文件、初始化參數(shù)文件、還有其它文件(密碼文件、報警日志文件和后臺及用戶跟蹤文件)。

1.2、邏輯結構:描述數(shù)據(jù)庫從邏輯上如何存儲數(shù)據(jù)庫中的數(shù)據(jù)。它是從數(shù)據(jù)庫的角度來分析數(shù)據(jù)的邏輯賣稿仿存儲。常見的邏輯結構包括:表空間、數(shù)據(jù)段、擴展區(qū)間、塊構成。需要明白的是:

*1、數(shù)據(jù)庫邏輯上是由一個或多個表空間組成的,常見的表空間包括:系統(tǒng)表空間、系統(tǒng)輔助表空間、UNDO表空間、臨時表空間、用戶表空間

*2、表空間與數(shù)據(jù)文件是物理上的一對多的關系,既一個表空間對應一個或多個數(shù)據(jù)文件,但是一個數(shù)據(jù)文件只能屬中纖于一個表空間

*3、表空間將數(shù)據(jù)庫的物理結構與邏輯結構敬棚相連接

2、物理結構

2.1、控制文件 (Control files):主要記錄數(shù)據(jù)庫的物理結構及其他的一些控制信息,如數(shù)據(jù)庫的名稱、數(shù)據(jù)文件、日志文件的名稱及位置。通常oracle會保留多個控制文件副本,并分別放在不同的物理位置,一旦其中的某個控制文件損壞,則可以通可其它的副本進行啟動。

參數(shù)文件init.ora記錄了控制文件的位置

控制文件包括如下主要信息

?6?1數(shù)據(jù)庫的名字,檢查點信息,數(shù)據(jù)庫創(chuàng)建的時間戳

?6?1所有的數(shù)據(jù)文件,聯(lián)機日志文件,歸檔日志文件信息

?6?1備份信息等

有了這些信息,Oracle就知道那些文件是數(shù)據(jù)文件,現(xiàn)在的重做日志文件是哪些,這些都是系統(tǒng)啟動和運行的基本條件,所以他是Oracle運行的根本。如果沒有控制文件系統(tǒng)是不可能啟動的??刂莆募欠浅V匾?,一般采用多個鏡相復制來保護控制文件,或采用RAID來保護控制文件??刂莆募膩G失,將使數(shù)據(jù)庫的恢復變的很復雜。

控制文件信息可以從v$controlfile中查詢獲得

SQL> select * from v$controlfile;

STATUS NAME

—-

C:\ORACLE\ORADATA\ORCL\CONTROL01.CTL

C:\ORACLE\ORADATA\ORCL\CONTROL02.CTL

C:\ORACLE\ORADATA\ORCL\CONTROL03.CTL2.2、數(shù)據(jù)文件(Data files),注意可以與后面講到的表空間進行對比,數(shù)據(jù)文件的詳細信息記載在控制文件中。注意:SYSTEM表空間是不允許脫機的。在進行數(shù)據(jù)庫恢復時,很多時候需要先將故障數(shù)據(jù)文件脫機。

可以通過如下方式查看數(shù)據(jù)文件:

SQL> select name,status,enabled from v$datafile;

NAMESTATUS ENABLED

-C:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\SYSTEM01.DBF ONLINE READ WRITE

C:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\UNDOTBS01.DBF ONLINE READ WRITE

C:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\SYSAUX01.DBF ONLINE READ WRITE

C:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\USERS01.DBF ONLINE READ WRITE

C:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\EXAMPLE01.DBF ONLINE READ WRITE

C:\ORACLE\ORADATA\ORCL\TEMP01.DBF ONLINE READ WRITE

2.3、重做日志文件(Redo files)用戶對數(shù)據(jù)庫進行的任何操作都會記錄在重做日志文件。在了解重做日志之前必須了解重做日志的兩個概念,重做日志組和重做日志組成員(Member),一個數(shù)據(jù)庫中至少要有兩個日志組文件,一組寫完后再寫另一組,即輪流寫。每個日志組中至少有一個日志成員,一個日志組中的多個日志成員是鏡相關系,有利于日志文件的保護,因為日志文件的損壞,特別是當前聯(lián)機日志的損壞,對數(shù)據(jù)庫的影響是巨大的。

聯(lián)機日志組的交換過程叫做切換,需要特別注意的是,日志切換在一個優(yōu)化效果不好的數(shù)據(jù)庫中會引起臨時的“掛起”。掛起大致有兩種情況:

?6?1在歸檔情況下,需要歸檔的日志來不及歸檔,而聯(lián)機日志又需要被重新利用

?6?1檢查點事件還沒有完成(日志切換引起檢查點),而聯(lián)機日志需要被重新利用

解決這種問題的常用手段是:

i.增加日志組

ii.增大日志文件成員大小

通過v$log可以查看日志組,v$logfile可以查看具體的成員文件。SQL> select group#,thread#,bytes,archived,members,archived,status from v$log; GROUP# THREAD# BYTES ARC MEMBERS ARC STATUS

5760 NONO CURRENT

5760 NONO INACTIVE

5760 NONO INACTIVE2.4、歸檔日志文件(Archived files)Oracle可以運行在兩種模式之中,歸檔模式和不歸檔模式。如果不用歸檔模式,當然,你就不會有歸檔日志,但是,你的系統(tǒng)將不會是一個實用系統(tǒng),Oracle不能保證數(shù)據(jù)能夠被正確恢復,因為你可能會丟失數(shù)據(jù)。但是在歸檔模式中,為了保存用戶的所有修改,在重做日志文件切換后和被覆蓋之間系統(tǒng)將他們另外保存成一組連續(xù)的文件系列,該文件系列就是歸檔日志文件。

有人或許會說,歸檔日志文件占領我大量的硬盤空間,其實,具體想一想,你是愿意浪費一點磁盤空間來保護你的數(shù)據(jù),還是愿意丟失你的數(shù)據(jù)呢?顯而義見,我們需要保證我們的數(shù)據(jù)的安全性。其實,歸檔并不是一直占領你的磁盤空間,你可以把她備份到磁帶上,或則刪除上一次完整備份前的所有日志文件。2.5、初始化參數(shù)文件(Parameter file)initSID.ora或init.ora文件,因為版本的不一樣,其位置也可能會不一樣。在8i或10g中,通常位于$ORACLE_HOME/admin//Pfile下

初始化文件記載了許多數(shù)據(jù)庫的啟動參數(shù),如內存,控制文件,進程數(shù)等,在數(shù)據(jù)庫啟動的時候加載(Nomount時加載),初始化文件記錄了很多重要參數(shù),對數(shù)據(jù)庫的性能影響很大,如果不是很了解,不要輕易亂改寫,否則會引起數(shù)據(jù)庫性能下降。2.6、其他文件i . 密碼文件。用于Oracle 的具有sysdba權限用戶的認證。文件一般位于

$ORACLE_HOME/database/PWD.ora。

ii. 日志文件?6?1報警日志文件(alert.log或alrt.ora)

記錄數(shù)據(jù)庫啟動,關閉和一些重要的出錯信息。數(shù)據(jù)庫管理員應該經(jīng)常檢查這個文件,并對出現(xiàn)的問題作出即使的反應。你可以通過以下SQL 找到他的路徑

select value from v$PARAMETER where name =’background_dump_dest’;

VALUE

C:\oracle\admin\orcl\bdump

?6?1后臺或用戶跟蹤文件

系統(tǒng)進程或用戶進程出錯前寫入的信息,一般不可能讀懂,可以通過ORACLE的TKPROF工具轉化為可以讀懂的格式。對于系統(tǒng)進程產(chǎn)生的跟蹤文件與報警日志文件的路徑一樣,用戶跟蹤文件的路徑,你可以通過以下SQL找到他的路徑

select value from v$PARAMETER where name =’user_dump_dest’;

SQL> select value from v$PARAMETER where name =’user_dump_dest’;VALUE

C:\oracle\admin\orcl\udump3、邏輯結構

3.1、表空間(tablespace)

表空間是數(shù)據(jù)庫中的基本邏輯結構,一系列數(shù)據(jù)文件的。一個表空間可以包含多個數(shù)據(jù)文件,但是一個數(shù)據(jù)文件只能屬于一個表空間。3.2、 段(Segment)

段是對象在數(shù)據(jù)庫中占用的空間,雖然段和數(shù)據(jù)庫對象是一一對應的,但段是從數(shù)據(jù)庫存儲的角度來看的。一個段只能屬于一個表空間,當然一個表空間可以有多個段。

表空間和數(shù)據(jù)文件是物理存儲上的一對多的關系,表空間和段是邏輯存儲上的一對多的關系,段不直接和數(shù)據(jù)文件。一個段可以屬于多個數(shù)據(jù)文件,關于段可以指定擴展到哪個數(shù)據(jù)文件上面。

段基本可以分為以下四種

?6?1數(shù)據(jù)段(Data Segment)

?6?1索引段(Index Segment)

?6?1回滾段(Rollback Segment)

?6?1臨時段(Temporary Segment)3.3、區(qū)間(Extent)

在一個段中可以存在多個區(qū)間,區(qū)間是為數(shù)據(jù)一次性預留的一個較大的存儲空間,直到那個區(qū)間被用滿,數(shù)據(jù)庫會繼續(xù)申請一個新的預留存儲空間,即新的區(qū)間,一直到段的更大區(qū)間數(shù)(Max Extent)或沒有可用的磁盤空間可以申請。

在ORACLE8i以上版本,理論上一個段可以無窮個區(qū)間,但是多個區(qū)間對ORACLE卻是有性能影響的,ORACLE建議把數(shù)據(jù)分布在盡量少的區(qū)間上,以減少ORACLE的管理與磁頭的移動,但是在某些特殊情況下,需要把一個段分布在多個數(shù)據(jù)文件或多個設備上,適當?shù)募佣鄥^(qū)間數(shù)也是有很大好處的。3.4、Oracle數(shù)據(jù)塊(Block)

ORACLE最基本的存儲單位,他是OS數(shù)據(jù)塊的整數(shù)倍。ORACLE的操作都是以塊為基本單位,一個區(qū)間可以包含多個塊(如果區(qū)間大小不是塊大小的整數(shù)倍,ORACLE實際也擴展到塊的整數(shù)倍)。3.5、基本表空間介紹

3.5.1、系統(tǒng)輔助表空間(sysaux)

SYSAUX表空間在Oracle Database 10g中引入,作為SYSTEM表空間的輔助表空間.

以前一些使用獨立表空間或系統(tǒng)表空間的數(shù)據(jù)庫組件現(xiàn)在在SYSAUX表空間中創(chuàng)建.

通過分離這些組件和功能,SYSTEM表空間的負荷得以減輕.反復創(chuàng)建一些相關對象及組件引起SYSTEM表空間的碎片問題得以避免。

3.5.2、系統(tǒng)表空間(System)

該表空間包含的數(shù)據(jù)文件稱為系統(tǒng)數(shù)據(jù)文件。

該存放系統(tǒng)表和數(shù)據(jù)字典,一般不放用戶的數(shù)據(jù),但是用戶腳本,如過程,函數(shù),包等卻是保存在數(shù)據(jù)字典中的。

名詞解釋:數(shù)據(jù)字典

數(shù)據(jù)字典是一些系統(tǒng)表或視圖,他存放系統(tǒng)的信息,他包括數(shù)據(jù)庫版本,數(shù)據(jù)文件信息,表與索引等段信息,系統(tǒng)的運行狀態(tài)等各種和系統(tǒng)有關的信息和用戶腳本信息。數(shù)據(jù)庫管理員可以通過對數(shù)據(jù)字典的查詢,就可以了解到Oracle的運行狀態(tài)。

查看數(shù)據(jù)數(shù)據(jù)字典的SQL

select * from dict;

查看內部系統(tǒng)表的SQL

select * from v$fixed_view_definition;

大量的讀少量的寫是該表空間的一個顯著的特點。再次提醒:該表空間不能脫機

3.5.3、 臨時表空間(Temporary)

該表空間包含的數(shù)據(jù)文件稱為臨時數(shù)據(jù)文件

主要存放用戶的排序等臨時數(shù)據(jù),因為沒有辦法在一個永久表空間上開辟臨時段,所以就必須有一個臨時表空間,主要用于不能在內存上進行的排序操作。我們必須為用戶指定一個臨時表空間。

臨時段占有的空間會在下次系統(tǒng)啟動的時候全部被釋放。

3.5.4、回滾段表空間(Rollback)

如果數(shù)據(jù)庫進行對數(shù)據(jù)的修改,那么就必須使用回滾段,回滾段是用來臨時存放修改前的數(shù)據(jù)(UNDO)?;貪L段通常都放在一個單獨的表空間上(回滾表空間),避免表空間碎片化,這個表空間包含的數(shù)據(jù)文件就是回滾數(shù)據(jù)文件。在Oracle9i中,提供了單獨的表空間用于保存回滾段,不再需要手工干預。

*1回滾段在系統(tǒng)中的作用

當數(shù)據(jù)庫進行更新插入刪除等操作的時候,新的數(shù)據(jù)被更新到原來的數(shù)據(jù)文件,而舊的數(shù)據(jù)(Before Image)就被放到回滾段中,如果數(shù)據(jù)需要回滾,那么可以從回滾段將數(shù)據(jù)再復制到數(shù)據(jù)文件中。來完成數(shù)據(jù)的回滾。在系統(tǒng)恢復的時候, 回滾段可以用來回滾沒有被commit 的數(shù)據(jù),解決系統(tǒng)的一直性讀。

回滾段在什么情況下都是大量的寫,一般是少量讀,因此建議把回滾段單獨出來放在一個單獨的設備(如單獨的磁盤或RAID),以減少磁盤的IO爭用。

*2、回滾段的工作方式

?6?1一個回滾表空間可以被劃分成多個回滾段.

?6?1一個回滾段可以保存多個會話的數(shù)據(jù).

?6?1回滾段是一個圓形的數(shù)據(jù)模型

3.5.5、用戶表空間(User)

其包含的數(shù)據(jù)文件稱為用戶數(shù)據(jù)文件

一般是由用戶建立,來存取用戶數(shù)據(jù)的表空間,一般有兩類常見的用戶型數(shù)據(jù),數(shù)據(jù)和索引,一般來說,如果條件許可的話,可以考慮放在不同的磁盤上。

3.5.6 例子表空間(example):例子表空間,可以不管。,它是數(shù)據(jù)庫在操作系統(tǒng)中的存儲位置。常見的物理結構包括:控制文件、數(shù)據(jù)文件、重作日志文件、歸檔日志文件、初始化參數(shù)文件、還有其它文件(密碼文件、報警日志文件和后臺及用戶跟蹤文件)。

oracle數(shù)據(jù)庫的物理構成的介紹就聊到這里吧,感謝你花時間閱讀本站內容,更多關于oracle數(shù)據(jù)庫的物理構成,深入探究:Oracle數(shù)據(jù)庫的物理構成解析,Oracle中邏輯結構和物理結構,他們之間的關系是什么?的信息別忘了在本站進行查找喔。

創(chuàng)新互聯(lián)服務器托管擁有成都T3+級標準機房資源,具備完善的安防設施、三線及BGP網(wǎng)絡接入帶寬達10T,機柜接入千兆交換機,能夠有效保證服務器托管業(yè)務安全、可靠、穩(wěn)定、高效運行;創(chuàng)新互聯(lián)專注于成都服務器托管租用十余年,得到成都等地區(qū)行業(yè)客戶的一致認可。


新聞標題:深入探究:Oracle數(shù)據(jù)庫的物理構成解析(oracle數(shù)據(jù)庫的物理構成)
網(wǎng)頁地址:http://m.5511xx.com/article/djhocjo.html