自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

由淺入深講Oracle存儲(chǔ)結(jié)構(gòu)

存儲(chǔ) 存儲(chǔ)軟件
一個(gè)數(shù)據(jù)庫(kù)可以由多個(gè)數(shù)據(jù)文件組成的,數(shù)據(jù)文件是真正存放數(shù)據(jù)庫(kù)數(shù)據(jù)的.一個(gè)數(shù)據(jù)文件就是一個(gè)操作系統(tǒng)文件.數(shù)據(jù)庫(kù)的對(duì)象(表和索引)物理上是被存放在數(shù)據(jù)文件中的。

 

概述

Oracle數(shù)據(jù)庫(kù)的存儲(chǔ)結(jié)構(gòu)分為邏輯存儲(chǔ)結(jié)構(gòu)和物理存儲(chǔ)結(jié)構(gòu)

 

邏輯存儲(chǔ)結(jié)構(gòu)

邏輯存儲(chǔ)結(jié)構(gòu)主要描述Oracle數(shù)據(jù)庫(kù)的內(nèi)部存儲(chǔ)結(jié)構(gòu),即從技術(shù)概念上描述在Oracle數(shù)據(jù)庫(kù)種如何組織、管理數(shù)據(jù).因此,邏輯存儲(chǔ)結(jié)構(gòu)是和操作系統(tǒng)平臺(tái)無關(guān)的,是由Oracle數(shù)據(jù)庫(kù)創(chuàng)建和管理的.

 

從邏輯上來看.

  1. 數(shù)據(jù)庫(kù)是由一個(gè)或者多個(gè)表空間等組成。
  2. 一個(gè)表空間(tablespace)由一組段組成,
  3. 一個(gè)段(segment)由一組區(qū)組成,
  4. 一個(gè)區(qū)(extent)由一批數(shù)據(jù)庫(kù)塊組成,
  5. 一個(gè)數(shù)據(jù)庫(kù)塊(block)對(duì)應(yīng)一個(gè)或多個(gè)物理塊

Database(數(shù)據(jù)庫(kù))

數(shù)據(jù)庫(kù)是按照數(shù)據(jù)結(jié)構(gòu)來組織、存儲(chǔ)和管理數(shù)據(jù)的倉(cāng)庫(kù)。

Tablespaces(表空間)

表空間是數(shù)據(jù)庫(kù)的邏輯劃分,一個(gè)表空間只能屬于一個(gè)數(shù)據(jù)庫(kù)。表空間(tablespace)是***的邏輯單位,對(duì)應(yīng)一個(gè)或多個(gè)數(shù)據(jù)文件,通常由相關(guān)的段組成。表空間的大小是它所對(duì)應(yīng)的數(shù)據(jù)文件大小的總和。所有的數(shù)據(jù)庫(kù)對(duì)象都存放在指定的表空間中。但主要存放的對(duì)象是表, 所以稱作表空間。

Segments (段):

一個(gè)段是分配給一個(gè)邏輯結(jié)構(gòu)(一個(gè)表、一個(gè)索引或其他對(duì)象)的一組區(qū),是數(shù)據(jù)庫(kù)對(duì)象使用的空間的集合;段可以有表段、索引段、回滾段、臨時(shí)段和高速緩存段等。Types of segments (段的類型詳解)

extents (盤區(qū))

是數(shù)據(jù)庫(kù)存儲(chǔ)空間分配的一個(gè)邏輯單位,它由連續(xù)數(shù)據(jù)塊所組成。***個(gè)段是由一個(gè)或多個(gè)盤區(qū)組成。當(dāng)一段中間所有空間已完全使用,oracle為該段分配一個(gè)新的范圍。

Data Block (數(shù)據(jù)塊)

是oralce 管理數(shù)據(jù)文件中存儲(chǔ)空間的單位,為數(shù)據(jù)庫(kù)使用的I/O的最小單位,最小的邏輯部件,其大小可不同于操作系統(tǒng)的標(biāo)準(zhǔn)I/O塊大小。數(shù)據(jù)塊的大小由DB_BLOCK_SIZE參數(shù)確定。塊尺寸是處理Oracle更新、選擇、或者插入數(shù)據(jù)事務(wù)的最小單位。當(dāng)用戶從表中選擇數(shù)據(jù)時(shí),選擇操作從數(shù)據(jù)庫(kù)文件中以塊為單位讀取或者提取數(shù)據(jù)。例如Oracle塊的大小為8kb,即使只想檢索4kb的字符的名字,也必須讀取含有這4個(gè)字符的整個(gè)8kb的塊。

操作系統(tǒng)也有一個(gè)磁盤塊尺寸,oracle塊尺寸應(yīng)該為磁盤尺寸的倍數(shù)。否則在每個(gè)I/O中只使用部分?jǐn)?shù)據(jù),可能會(huì)浪費(fèi)時(shí)間去讀寫磁盤快。

  • 如果行比較小并且訪問很隨機(jī),這設(shè)置較小的塊尺寸
  • 如果行比較小且訪問主要是連續(xù)的(或者隨機(jī)且連續(xù)的),或者如果有較大的行,則選擇較大的塊尺寸。

DB_BLOCK_SIZE初始化參數(shù)決定ORACLE 數(shù)據(jù)庫(kù)的標(biāo)準(zhǔn)塊尺寸,并且Oracle還可以指定4個(gè)額外的非標(biāo)準(zhǔn)的塊尺寸。多個(gè)塊尺寸主要用于在不同的數(shù)據(jù)庫(kù)尺寸的數(shù)據(jù)庫(kù)之間傳送表空間。如果選擇配置多個(gè)Oracle塊尺寸,還必須配置SGA的緩沖區(qū)高速緩存中相應(yīng)的子高速緩存。

物理存儲(chǔ)結(jié)構(gòu)

 

Oracle物理存儲(chǔ)結(jié)構(gòu)組成:

  • 數(shù)據(jù)文件(data file)、
  • 聯(lián)機(jī)日志文件(online redo log file)、
  • 控制文件(control file)組成的
  • 歸檔日志文件、
  • 參數(shù)文件、
  • 警報(bào)文件、
  • 跟蹤文件、
  • 備份文件

數(shù)據(jù)文件(data file):

一個(gè)數(shù)據(jù)庫(kù)可以由多個(gè)數(shù)據(jù)文件組成的,數(shù)據(jù)文件是真正存放數(shù)據(jù)庫(kù)數(shù)據(jù)的.一個(gè)數(shù)據(jù)文件就是一個(gè)操作系統(tǒng)文件.數(shù)據(jù)庫(kù)的對(duì)象(表和索引)物理上是被存放在數(shù)據(jù)文件中的。當(dāng)我們要查詢一個(gè)表的數(shù)據(jù)的時(shí)候,如果該表的數(shù)據(jù)沒有在內(nèi)存中,那么oracle就要讀取該表所在的數(shù)據(jù)文件,然后把數(shù)據(jù)存放到內(nèi)存中.數(shù)據(jù)文件的特征是:

  1. 一個(gè)數(shù)據(jù)文件只能屬于一個(gè)數(shù)據(jù)庫(kù)
  2. 數(shù)據(jù)文件可以被設(shè)置成自動(dòng)增長(zhǎng)
  3. 一個(gè)或多個(gè)數(shù)據(jù)文件組成了表空間
  4. 一個(gè)數(shù)據(jù)文件只能屬于一個(gè)表空間

控制文件(control file):

一個(gè)數(shù)據(jù)庫(kù)至少要有一個(gè)控制文件,控制文件中存放的數(shù)據(jù)庫(kù)的"物理結(jié)構(gòu)信息",正是因?yàn)樗娣诺氖菙?shù)據(jù)庫(kù)的物理結(jié)構(gòu)信息,所以他就顯得尤其的重要。這些物理結(jié)構(gòu)信息就包括:

  1. 數(shù)據(jù)庫(kù)的名字
  2. 數(shù)據(jù)文件和聯(lián)機(jī)日志文件的名字及位置
  3. 創(chuàng)建數(shù)據(jù)庫(kù)時(shí)的時(shí)間戳

為了更好的保護(hù)數(shù)據(jù)庫(kù),我們可以鏡像控制文件。每個(gè)控制文件中的內(nèi)容就是相同的。鏡像了控制文件,即使其中的一個(gè)控制文件出現(xiàn)了問題,也不會(huì)影響到數(shù)據(jù)庫(kù)的損壞,數(shù)據(jù)的丟失。在啟動(dòng)數(shù)據(jù)庫(kù)的時(shí)候,oracle就會(huì)根據(jù)控制文件中的數(shù)據(jù)文件和聯(lián)機(jī)日志文件的信息來打開數(shù)據(jù)庫(kù)。

聯(lián)機(jī)日志文件(online redo log file):

一個(gè)數(shù)據(jù)庫(kù)可以有多個(gè)聯(lián)機(jī)日志文件,聯(lián)機(jī)日志文件包含了重做記錄(undo records).聯(lián)機(jī)日志文件記錄了數(shù)據(jù)庫(kù)的改變,例如當(dāng)一次意外導(dǎo)致對(duì)數(shù)據(jù)的改變沒有及時(shí)的寫到數(shù)據(jù)文件中,那么oracle就會(huì)根據(jù)聯(lián)機(jī)日志文件中 的信息獲得這些改變,然后把這些改變寫到數(shù)據(jù)文件中.這也是聯(lián)機(jī)日志文件存在的意義.聯(lián)機(jī)日志文件中重做記錄的唯一功能就是用來做實(shí)例的恢復(fù).比如,一次系統(tǒng)的意外掉電,導(dǎo)致內(nèi)存中的數(shù)據(jù)沒有被寫到數(shù)據(jù)文件中.那么oralce就會(huì)根據(jù)聯(lián)機(jī)日志文件中的重做記錄功能包數(shù)據(jù)庫(kù)恢復(fù)到失敗前的狀態(tài).

歸檔日志文件(Archive log file):

是聯(lián)機(jī)日志文件的副本,他記錄了對(duì)數(shù)據(jù)庫(kù)改變的歷史.

參數(shù)文件(parameter file):

通常情況下指的就是初始化參數(shù)文件(initialization parameter file).參數(shù)文件包括了初始化參數(shù)文件和服務(wù)器端參數(shù)文件(server parameter file).在數(shù)據(jù)庫(kù)啟動(dòng)的時(shí)候就會(huì)讀取參數(shù)文件,然后根據(jù)參數(shù)文件中的參數(shù)來分配SGA并啟動(dòng)一系列的后臺(tái)進(jìn)程.參數(shù)文件中存放的是數(shù)據(jù)庫(kù)和實(shí)例的參 數(shù).

警報(bào)文件(alert log file):

就是警報(bào)日志文件,他記錄了數(shù)據(jù)庫(kù)的重大活動(dòng)和所發(fā)生的錯(cuò)誤.警報(bào)文件按照時(shí)間的先后來記錄所發(fā)生的重大活動(dòng)和錯(cuò)誤.警報(bào)文件的名字的格式是 alertSID.log.警報(bào)文件的位置是由初始化參數(shù)background_dump_desc指定的.

跟蹤文件(trace log file):

就是跟蹤日志文件,每個(gè)服務(wù)器進(jìn)程和后臺(tái)進(jìn)程都寫跟蹤文件.例如當(dāng)后臺(tái)進(jìn)程發(fā)生了錯(cuò)誤的時(shí)候,oracle就會(huì)把錯(cuò)誤的信息寫到跟蹤文件中.DBA就可以根據(jù)跟蹤文件的信息來查看進(jìn)程中所發(fā)生的錯(cuò)誤.跟蹤文件被寫到了兩個(gè)目錄中.和服務(wù)器進(jìn)程有關(guān)的信息被寫到了由初始化參數(shù)user_dump_desc指定的目錄中,和后臺(tái)進(jìn)程有關(guān)信息被寫到了由初始化參數(shù)background_dump_desc指定的目錄中.伴隨著時(shí)間跟蹤文件就會(huì)被寫滿,DBA可以 手動(dòng)來刪除跟蹤文件,也可以限制跟蹤文件的大小.初始化參數(shù)MAX_DUMP_FILE_SIZE就可以限制跟蹤文件的大小.

備份文件(backup file):

就是在數(shù)據(jù)庫(kù)發(fā)生介質(zhì)損壞的時(shí)候用來還原(restore)數(shù)據(jù)庫(kù)的,恢復(fù)(recover)數(shù)據(jù)的.

 

責(zé)任編輯:武曉燕 來源: 今日頭條
相關(guān)推薦

2010-04-21 16:55:06

Oracle物理存儲(chǔ)結(jié)

2010-04-21 16:07:04

Oracle邏輯存儲(chǔ)結(jié)

2010-04-20 10:58:54

2010-05-10 14:16:50

Oracle樹結(jié)構(gòu)

2011-03-25 11:13:15

Oracle數(shù)據(jù)庫(kù)進(jìn)程

2010-11-15 12:02:24

Oracle進(jìn)程結(jié)構(gòu)

2011-05-19 13:49:07

Oracle物理結(jié)構(gòu)

2010-11-15 11:58:02

Oracle物理結(jié)構(gòu)

2010-10-28 14:29:39

Oracle內(nèi)存結(jié)構(gòu)

2009-11-17 10:48:22

Oracle Spat

2010-04-15 13:10:09

Oracle系統(tǒng)結(jié)構(gòu)

2012-10-17 10:22:40

存儲(chǔ)

2018-10-12 11:11:39

Oracle內(nèi)存結(jié)構(gòu)

2020-12-02 08:30:27

Java Synchroniz并發(fā)

2010-03-25 17:20:00

CentOS入門

2009-10-26 13:45:39

linux Makef

2011-04-13 09:45:15

Oracle存儲(chǔ)

2011-04-15 10:56:22

2010-04-07 13:12:25

Oracle存儲(chǔ)過程

2009-03-25 10:48:08

存儲(chǔ)銀行Oracle
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)