09-表空間和數(shù)據(jù)文件的管理_第1頁
09-表空間和數(shù)據(jù)文件的管理_第2頁
09-表空間和數(shù)據(jù)文件的管理_第3頁
09-表空間和數(shù)據(jù)文件的管理_第4頁
09-表空間和數(shù)據(jù)文件的管理_第5頁
已閱讀5頁,還剩76頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、Oracle存儲(chǔ)管理之第九章 表空間和數(shù)據(jù)文件的管理第九章 表空間和數(shù)據(jù)文件的管理【教學(xué)導(dǎo)航】知識(shí)技能目標(biāo)和要求理解表空間和數(shù)據(jù)文件等各種存儲(chǔ)概念理解數(shù)據(jù)庫、表空間、數(shù)據(jù)文件三者的關(guān)系掌握使用SQL命令和OEM有效地管理表空間和數(shù)據(jù)文件的方法本章重點(diǎn)理解表空間各種存儲(chǔ)概念掌握對(duì)表空間管理方法本章難點(diǎn)表空間和數(shù)據(jù)文件的管理策略課時(shí)建議4課時(shí)第九章 表空間和數(shù)據(jù)文件的管理9.1 表空間和數(shù)據(jù)文件概述9.2 表空間磁盤空間管理9.2.1 表空間管理的戰(zhàn)略9.2.2 創(chuàng)建表空間9.2.3 修正表空間9.2.4 刪除表空間9.2.5查看表空間9.3 管理數(shù)據(jù)文件9.3.1 數(shù)據(jù)文件管理的戰(zhàn)略9.3.2

2、創(chuàng)建數(shù)據(jù)文件9.3.3 修正數(shù)據(jù)文件9.3.4 刪除數(shù)據(jù)文件9.3.5 查看數(shù)據(jù)文件9.4 在OEM中管理表空間和數(shù)據(jù)文件【內(nèi)容綱要】第九章 管理表空間和數(shù)據(jù)文件運(yùn)用不同的系統(tǒng)視圖命令查看表空間和數(shù)據(jù)文件信息運(yùn)用SQL*PLUS和OEM工具管理表空間和數(shù)據(jù)文件能根據(jù)實(shí)踐情況操作表空間和數(shù)據(jù)文件包括:創(chuàng)建、修正、刪除等【義務(wù)描畫】數(shù)據(jù)庫邏輯構(gòu)造物理構(gòu)造表空間OS 塊Oracle塊段區(qū)數(shù)據(jù)文件Oracle將數(shù)據(jù)物理地存在數(shù)據(jù)文件中,而邏輯地存在表空間中數(shù)據(jù)庫存儲(chǔ)體系構(gòu)造9.1 概述【知識(shí)講解與操作指點(diǎn)】為什么引入如此復(fù)雜的存儲(chǔ)體系構(gòu)造.9.1 概述主要描畫oracle數(shù)據(jù)庫的外部存儲(chǔ)構(gòu)造在操作系統(tǒng)

3、中如何組織、管理數(shù)據(jù)。與操作系統(tǒng)平臺(tái)有關(guān)。是邏輯存儲(chǔ)構(gòu)造在物理上的、可見的、可操作的、詳細(xì)的實(shí)現(xiàn)方式。物理存儲(chǔ)構(gòu)造對(duì)應(yīng)的操作系統(tǒng)文件存儲(chǔ)在磁盤上。PasswordfileParameterfileArchived Log filesControl filesDatafiles Redo Log filesOracle Database物理構(gòu)造用于描畫在oracle內(nèi)部組織和管理數(shù)據(jù)的方式指定數(shù)據(jù)庫的物理空間如何運(yùn)用與操作系統(tǒng)平臺(tái)無關(guān),是由oracle數(shù)據(jù)庫創(chuàng)建和管理的。為一層次構(gòu)造Hierarchy,由表空間 tablespaces, 段segments, 分區(qū)extents, 和塊 bloc

4、ksTablespaceDatafileSegmentBlocksExtentSegment邏輯構(gòu)造 Logical Structure9.1 概述數(shù)據(jù)庫表空間Oracle塊段區(qū)9.1 概述表空間Tablespaces:在任一時(shí)辰只能屬于一個(gè)數(shù)據(jù)庫由一個(gè)或多個(gè)數(shù)據(jù)文件所組成 數(shù)據(jù)文件Data files:可以而且只能屬于一個(gè)表空間 和一個(gè)數(shù)據(jù)庫是存儲(chǔ)方式對(duì)象數(shù)據(jù)的 一個(gè)容器/倉庫任何方案對(duì)象如表、索引都被存儲(chǔ)在表空間的數(shù)據(jù)文件中。表空間和數(shù)據(jù)文件TablespaceDatafileSegmentBlocksExtentSegment 9.1 概述 (1)可以將數(shù)據(jù)字典與用戶數(shù)據(jù)別分開來,防止由

5、于字典對(duì)象和用戶對(duì)象保管在同一個(gè)數(shù)據(jù)文件中而產(chǎn)生的I/O沖突。(2)可以將回退數(shù)據(jù)與用戶數(shù)據(jù)別分開來,防止由于硬盤損壞而導(dǎo)致永久性的數(shù)據(jù)喪失。(3)可以將表空間的數(shù)據(jù)文件分散保管到不同的硬盤上,平均分布物理I/O操作。(4)可以將某個(gè)表空間設(shè)置為脫機(jī)形狀或聯(lián)機(jī)形狀,以便對(duì)數(shù)據(jù)庫的一部分進(jìn)展備份和恢復(fù)。(5)可以將某個(gè)表空間設(shè)置為只讀形狀,從而將數(shù)據(jù)庫的一部分設(shè)置為只讀形狀。(6) 可以為某種特殊用途專門設(shè)置一個(gè)表空間,比如暫時(shí)表空間等,以優(yōu)化表空間的運(yùn)用效率。(7)可以更加靈敏地為用戶設(shè)置表空間限額。表空間和數(shù)據(jù)文件的作用9.1 概述系統(tǒng)SYSTEM 與數(shù)據(jù)庫一同建立存儲(chǔ)數(shù)據(jù)字典包含了系統(tǒng)復(fù)原

6、段非系統(tǒng)Non-SYSTEM表空間存儲(chǔ)一些單獨(dú)的段方便磁盤空間管理控制分配給用戶磁盤空間的數(shù)量SYSTEMSYSAUXUsersToolsIndextempundo表空間的分類9.1 概述oracle建議: 不要將用戶數(shù)據(jù)存儲(chǔ)在系統(tǒng)表空間中。對(duì)于大部分?jǐn)?shù)據(jù)庫來說,至少應(yīng)創(chuàng)建一個(gè)非SYSTEM表空間,用它們來存放用戶數(shù)據(jù),以實(shí)現(xiàn)用戶數(shù)據(jù)和系統(tǒng)數(shù)據(jù)的完全隔離。9.1 概述大文件bigfile表空間它只能放置一個(gè)數(shù)據(jù)文件或暫時(shí)文件其數(shù)據(jù)文件可以包括4G個(gè)數(shù)據(jù)塊。大文件表空間是為超大型數(shù)據(jù)庫而設(shè)計(jì),以減少數(shù)據(jù)文件的數(shù)量,使更新數(shù)據(jù)文件頭部信息的操作快得多。小文件small file表空間以前的orac

7、le表空間的新稱號(hào)??梢苑胖枚噙_(dá)1024個(gè)數(shù)據(jù)文件。System,sysaux表空間總是被創(chuàng)建為小文件表空間大文件表空間與小文件表空間9.2 表空間的磁盤空間管理Oracle 10g 的表空間按照區(qū)和段進(jìn)展管理針對(duì)區(qū)的分配方式的不同,有兩種管理方式:數(shù)據(jù)字典管理的表空間:空閑分區(qū)由數(shù)據(jù)字典來管理。當(dāng)分區(qū)被分配或收回時(shí)對(duì)應(yīng)的系統(tǒng)表將被修正。本地管理的表空間:空閑分區(qū)在表空間中管理。用位圖Bitmap來記錄空閑分區(qū)。 位圖中的每一位對(duì)應(yīng)于一塊或一組塊。位值指示空閑或分配。注:在創(chuàng)建表空間時(shí)選擇其中一種空間管理方法,在以后將無法改動(dòng)該方法。 HeaderFree spaceData Oracle數(shù)據(jù)

8、塊包含塊頭header、數(shù)據(jù)空間data、空閑空間free space三個(gè)部分。 塊的構(gòu)造9.2 表空間的磁盤空間管理9.2 表空間的磁盤空間管理 兩者比較數(shù)據(jù)字典管理的表空間:分區(qū)的管理是在數(shù)據(jù)字典中進(jìn)展的。每一個(gè)存儲(chǔ)在同一表空間中的段可以具有不同的存儲(chǔ)子句。需求合并碎片。本地管理的表空間:減少數(shù)據(jù)字典表的競爭當(dāng)磁盤空間分配或收回時(shí)不會(huì)產(chǎn)生回滾復(fù)原數(shù)據(jù)不需求合并碎片9.2 表空間的磁盤空間管理一、區(qū)的分配方式:UNIFORM:一致分配 ,指定表空間中一切區(qū)的大小都一樣。AUTOALLOCATE:自動(dòng)分配,指定由ORACLE來自動(dòng)管理區(qū)的大小,默許設(shè)置在AUTOALLOCATE方式下,區(qū)的大小

9、隨表的大小自動(dòng)地動(dòng)態(tài)改動(dòng),其對(duì)應(yīng)關(guān)系如下表表大小 區(qū)大小64KB 64KB1MB 1MB64MB 8MB1000MB 64MB本地管理方式9.2 表空間的磁盤空間管理二、段管理方式oracle中用來管理段中已用數(shù)據(jù)塊和空閑數(shù)據(jù)塊的機(jī)制。表空間的段管理方式:MANUAL方式:運(yùn)用可用列表來管理段的空閑數(shù)據(jù)塊,默許設(shè)置AUTO方式:運(yùn)用位圖來管理段的已用數(shù)據(jù)塊和空閑數(shù)據(jù)塊。本地管理方式9.3 創(chuàng)建表空間9.3.1 創(chuàng)建表空間的準(zhǔn)那么9.3.2 運(yùn)用OEM創(chuàng)建表空間9.3.3 運(yùn)用SQL命令創(chuàng)建表空間9.3 創(chuàng)建表空間1.創(chuàng)建多個(gè)非SYSTEM表空間2.設(shè)置表空間的默許存儲(chǔ)參數(shù)針對(duì)數(shù)據(jù)字典管理方式3

10、.為用戶設(shè)置表空間配額9.3.1 創(chuàng)建表空間的準(zhǔn)那么 1創(chuàng)建多個(gè)非system表空間運(yùn)用多個(gè)表空間以便在執(zhí)行數(shù)據(jù)庫操作時(shí)有更大的靈敏性。需求思索如下戰(zhàn)略:用戶數(shù)據(jù)與數(shù)據(jù)字典分開存放;將運(yùn)用程序數(shù)據(jù)彼此分開存放;將不同表空間的數(shù)據(jù)文件存儲(chǔ)在不同的磁盤上以減少I/O爭用;將回退段數(shù)據(jù)與用戶數(shù)據(jù)分開存放,以防止磁盤缺點(diǎn)導(dǎo)致數(shù)據(jù)永久喪失;9.3 創(chuàng)建表空間9.3.1 創(chuàng)建表空間的準(zhǔn)那么1創(chuàng)建多個(gè)非system表空間使單獨(dú)的表空間脫機(jī),同時(shí)使其它的表空間聯(lián)機(jī);保管表空間用于特定類型的數(shù)據(jù)庫運(yùn)用,如更快的更新操作,只讀操作或者暫時(shí)段存儲(chǔ);備份單獨(dú)的表空間??梢愿屿`敏地為用戶設(shè)置存儲(chǔ)限額,等等 9.3 創(chuàng)

11、建表空間9.3.1 創(chuàng)建表空間的準(zhǔn)那么2設(shè)置表空間的默許存儲(chǔ)參數(shù) 當(dāng)創(chuàng)建一個(gè)新的數(shù)據(jù)字典管理的表空間時(shí),可以為該表空間中將要?jiǎng)?chuàng)建的方案對(duì)象指定默許的存儲(chǔ)參數(shù)。當(dāng)創(chuàng)建一個(gè)新的本地管理的表空間時(shí),不需求指定默許的存儲(chǔ)參數(shù)。注:假設(shè)沒有為一個(gè)新的表空間指定默許的存儲(chǔ)參數(shù),那么oracle針對(duì)用戶操作系統(tǒng)的默許存儲(chǔ)參數(shù)就成為該表空間的默許存儲(chǔ)參數(shù)。 9.3 創(chuàng)建表空間9.3.1 創(chuàng)建表空間的準(zhǔn)那么3.為用戶設(shè)置表空間配額配額是指用戶在某個(gè)指定的表空間中允許運(yùn)用的存儲(chǔ)空間的大小。當(dāng)用戶創(chuàng)建表、索引等具有獨(dú)立段構(gòu)造的數(shù)據(jù)庫方案對(duì)象時(shí),都必需在表空間中為這此方案對(duì)象分配存儲(chǔ)空間。一旦該用戶用完了在某個(gè)表空間

12、中為他分配 的配額,他將不能再在這個(gè)表空間中創(chuàng)建方案對(duì)象。9.3 創(chuàng)建表空間9.3.1 創(chuàng)建表空間的準(zhǔn)那么9.3 創(chuàng)建表空間在表空間的創(chuàng)建中,oracle會(huì)完成如下兩件任務(wù): 一是在數(shù)據(jù)字典和控制文件中記錄下新創(chuàng)建的表空間二是在操作系統(tǒng)中按指定的位置和文件名創(chuàng)建指定大小的操作系統(tǒng)文件,作為該表空間對(duì)應(yīng)的數(shù)據(jù)文件。9.3 創(chuàng)建表空間創(chuàng)建表空間的方法運(yùn)用SQL命令創(chuàng)建表空間運(yùn)用OEM創(chuàng)建表空間SQL語句 表類型CREATE TABLESPACE 創(chuàng)建永久表空間CREATE BIGFILE TABLESPACE 創(chuàng)建大文件表空間CREATE TEMPORARY TABLESPACE 創(chuàng)建暫時(shí)表空間C

13、REATE UNDO TABLESPACE 創(chuàng)建撤銷表空間以下以創(chuàng)建本地管理的表空間為例,引見表空間的創(chuàng)建方法運(yùn)用如下的命令創(chuàng)建表空間需具有CREATE TABLESPACE 系統(tǒng)權(quán)限:9.3.2 運(yùn)用SQL命令創(chuàng)建表空間9.3 創(chuàng)建表空間9.3 創(chuàng)建表空間有三種創(chuàng)建永久表空間的方法1運(yùn)用uniform區(qū)分配方式在這種方式下,oracle將為表空間中一切對(duì)象都分配指定的一樣大小的區(qū)默以為1MB。Uniform區(qū)分配方式的優(yōu)點(diǎn):在表空間中不會(huì)產(chǎn)生磁盤碎片,可以節(jié)約磁盤空間條件:能預(yù)測(cè)到表空間中存放的大部分對(duì)象都要求運(yùn)用一樣大小的區(qū)1 創(chuàng)建永久表空間SQLcreate tablespace pio

14、neeruserts01Datafile e:oradataexamdbpioneeruserts01_1.dbf size 10M, e:oradataexamdbpioneeruserts01_2.dbf size 20MUniform size 128K;表空間已創(chuàng)建9.3 創(chuàng)建表空間2運(yùn)用AUTOALLOCATE區(qū)分配方式在這種方式下,oracle將自動(dòng)為表空間中不同對(duì)象分配相應(yīng)大小的區(qū)最小為64KB。缺陷:在表空間中會(huì)產(chǎn)生磁盤碎片,進(jìn)而呵斥磁盤空間的浪費(fèi),但可以減少DBA的任務(wù)量。條件:能預(yù)測(cè)到表空間中存放的對(duì)象所需求的區(qū)的大小會(huì)有很大不同SQLcreate tablespace p

15、ioneeruserts02Datafile e:oradataexamdbpioneerts02_1.dbf size 2MAUTOALLOCATE;表空間已創(chuàng)建1 創(chuàng)建永久表空間9.3 創(chuàng)建表空間3運(yùn)用AUTO段管理方式可用segment space management子句來指定表空間的段管理方式,注:假設(shè)不運(yùn)用上述子句,由默許運(yùn)用manual段管理方式SQLcreate tablespace pioneerindexts01Datafile e:oradataexamdbpioneerindexts01_1.dbf size 2MUniform size 128K segment sp

16、ace management AUTO;表空間已創(chuàng)建1 創(chuàng)建永久表空間9.3 創(chuàng)建表空間大文件表空間只能用于oracle 10g數(shù)據(jù)庫,而且僅在本地管理的表空間中才支持大文件表空間。SQLcreate bigfile tablespace pioneerbigts05Datafile e:oradataexamdbpioneerbigts05_1.dbf size 2M表空間已創(chuàng)建2 創(chuàng)建大文件表空間9.3 創(chuàng)建表空間用做排序操作可以由多個(gè)用戶共享不能包含任何永久對(duì)象Oracle引薦運(yùn)用本地管理的分區(qū)/區(qū)段ExtentsSQLcreate temporary tablespace pionee

17、rtmpts01Tempfilee:oradataexamdbpioneertmpts01_1.dbf size 4MEXTENT MANAGEMENT LOCALUniform size 1K;表空間已創(chuàng)建注:當(dāng)建立暫時(shí)表空間時(shí),不能指定autoallocate選項(xiàng)指定為本地管理方式,可以省略3、 創(chuàng)建暫時(shí)表空間9.3 創(chuàng)建表空間從oracle 10g開場,允許運(yùn)用create bigfile temporary tablespace命令,創(chuàng)建一個(gè)只包含一個(gè)暫時(shí)文件的大文件暫時(shí)表空間。SQLcreate bigfile temporary tablespace pioneerbigtmpts

18、01Tempfilee:oradataexamdbpioneerbigtmpts01_1.dbf size 4MEXTENT MANAGEMENT LOCALUniform size 1K;表空間已創(chuàng)建4 、創(chuàng)建大文件暫時(shí)表空間9.3 創(chuàng)建表空間暫時(shí)表空間上的一些限制不能被轉(zhuǎn)變?yōu)橹蛔x形狀暫時(shí)文件上的任何變化都不會(huì)記載到重做日志文件中默許暫時(shí)表空間不能被刪除,除非有一個(gè)新的默許暫時(shí)表空間可以運(yùn)用不能被改為一個(gè)永久表空間無法包含任何永久對(duì)象9.3 創(chuàng)建表空間用來存儲(chǔ)復(fù)原段UNDO段不能包含任何其它對(duì)象分區(qū)/區(qū)段Extents由本地管理只能運(yùn)用 DATAFILE 和 EXTENT MANAGEMEN

19、T 子句SQLcreate UNDO tablespace pioneerundots01datafilee:oradataexamdbpioneerundots01_1.dbf size 4M表空間已創(chuàng)建5、創(chuàng)建撤銷表空間9.3 創(chuàng)建表空間注:1. 在UNDO表空間上不能建立永久方案對(duì)象如表、索引和簇2.創(chuàng)建UNDO表空間時(shí)只能指定DATAFILE和EXTENT MANAGEMENT LOCAL選項(xiàng),而不能指定其他選項(xiàng),否那么會(huì)出錯(cuò)。如SQLcreate smallfile UNDO tablespace pioneerundots01datafilee:oradataexamdbpione

20、erundots01_1.dbf size 4MUNIFORM SIZE 1K;UNIFORM SIZE 1K*第3行出現(xiàn)錯(cuò)誤: ORA-030024 :create smallfile undo tablespace 的闡明無效5、創(chuàng)建撤銷表空間9.3 創(chuàng)建表空間9.3.3 運(yùn)用OEM創(chuàng)建表空間操作進(jìn)展中.9.4 表空間和數(shù)據(jù)文件的維護(hù)9.4.1 獲取表空間和數(shù)據(jù)文件的信息9.4.2 監(jiān)控表空間的運(yùn)用情況9.4.3 擴(kuò)展表空間9.4.4 默許表空間的設(shè)置9.4.5 修正表空間的可用性9.4.5 修正數(shù)據(jù)文件的可用性9.4 表空間和數(shù)據(jù)文件的維護(hù)出現(xiàn)某種缺點(diǎn)需求使表空間脫機(jī)表空間中存放的是一些

21、歷史數(shù)據(jù)制止對(duì)其更改數(shù)據(jù)文件所在的磁盤損壞需求改動(dòng)其物理位置表空間的可用空間太少改動(dòng)表空間的默許信息 等等哪些情況下需求對(duì)表空間和數(shù)據(jù)文件進(jìn)展維護(hù)呢?9.4 表空間和數(shù)據(jù)文件的維護(hù)表空間的維護(hù)包括:用各種方式擴(kuò)展表空間的存儲(chǔ)空間修正表空間的屬性如稱號(hào)和形狀如能否只讀、脫機(jī)等可以運(yùn)用ALTER TABLESPACE來修正表空間用戶必需擁有ALTER TABLESPACE或ALTER DATABASE系統(tǒng)權(quán)限才干維護(hù)表空間9.4.1 獲得表空間和數(shù)據(jù)文件信息視圖 闡明V$TABLESPACE 來自控制文件的一切表空間稱號(hào)和編號(hào)DBA_TABLESPACE 一切或用戶可訪問的表空間的信息USER_T

22、ABLESPACE DBA_SEGMENTS 一切或用戶可訪問的表空間中段的信息USER_SEGMENTSDBA_EXTENTS 一切或用戶可訪問的表空間中數(shù)據(jù)盤 區(qū)的信息USER_EXTENTSDBA_FREE_SPACE 一切或用戶可訪問的表空間中空閑區(qū)USER_FREE_SPACE 的信息獲取表空間信息常用視圖9.4.1 獲得表空間和數(shù)據(jù)文件信息視圖 闡明V$DATAFILE 一切數(shù)據(jù)文件的信息,包括所屬表空間的稱號(hào)和編號(hào)V$TEMPFILE 一切暫時(shí)文件的信息,包括所屬表空間的稱號(hào)和編號(hào)DBA_DATA_FILES 數(shù)據(jù)文件及其所屬的表空間的信息DBA_TEMP_FILES 暫時(shí)文件及

23、其所屬的表空間的信息V$TEMP_EXTENT_MAP 本地管理的暫時(shí)表空間中的一切盤區(qū)的信息V$TEMP_EXTENT_POOL 本地管理的暫時(shí)表空間的緩存信 息,運(yùn)用的暫時(shí)表空間的形狀信息V$TEMP_SPACE_HEADER 每個(gè)暫時(shí)文件的已用/空閑空間信息DBA_USERS 一切用戶默許的和暫時(shí)的表空間信息DBA_TS_QUOTAS 一切用戶的表空間配額信息V$SORT_SEGMENT 例程的每個(gè)排序段的信息,只在表空間 為TEMPORARY類型時(shí)更新V$SORT_USER 用戶運(yùn)用的暫時(shí)排序段的信息獲取數(shù)據(jù)文件信息常用視圖9.4.1 獲得表空間和數(shù)據(jù)文件信息一、查詢表空間的根本信息

24、DBA_TABLESPACE例要獲得數(shù)據(jù)庫中各個(gè)表空間的稱號(hào)、區(qū)管理方式、區(qū)分配嚴(yán)嚴(yán)實(shí)實(shí)、段管理方式、類型等根本信息,可查詢DBA_TABLESPACE視圖SQL select * from dba_tablespaces; 二、 查詢表空間和默許存儲(chǔ)參數(shù) 例經(jīng)過查詢數(shù)據(jù)字典dba_tablespaces,可以獲得表空間默許存儲(chǔ)參數(shù)。 SQLselect tablespace_name,block_size,initial_extent,next_extent from dba_tablespaces; 例如三、查詢數(shù)據(jù)庫的數(shù)據(jù)文件及其所屬的表空間DBA_DATA_FILESSQLselect

25、 file_name,blocks,tablespace_name from dba_data_files;四、查詢emp表用了多少空間 select count(*) extents,sum(bytes) bytes_used,sum(blocks) block_used from dba_extents where owner=SCOTT and segment_name=EMP and segment_type=TABLE;9. 4.1 獲得表空間和數(shù)據(jù)文件信息9.4 表空間和數(shù)據(jù)文件的維護(hù)9.4.2 監(jiān)控表空間的運(yùn)用 1.每個(gè)表空間的總的大小 dba_data_filesSQL sel

26、ect tablespace_name,sum(bytes)/1024/1024 total_MB from dba_data_files group by tablespace_name;9.4 表空間和數(shù)據(jù)文件的維護(hù)9.4.2 監(jiān)控表空間的運(yùn)用 2、求每個(gè)表空間的空閑情況 dba_free_spaceSQL select tablespace_name,sum(bytes)/1024/1024 free_MB from dba_free_space group by tablespace_name;9.4 表空間和數(shù)據(jù)文件的維護(hù)9.4.2 監(jiān)控表空間的運(yùn)用 3、求每個(gè)表空間的空閑百分比SQ

27、L select b.tablespace_name,sum(b.bytes)/1024/1024 total_MB, sum(a.bytes)/1024/1024 free_MB, round(sum(a.bytes)/sum(b.bytes)*100,1) free/total % from dba_free_space a,dba_data_files b where a.file_id=b.file_id group by b.tablespace_name;9.4 表空間和數(shù)據(jù)文件的維護(hù)一、擴(kuò)展表空間的方法有:允許現(xiàn)有數(shù)據(jù)文件自動(dòng)擴(kuò)展更改現(xiàn)有數(shù)據(jù)文件大小添加新數(shù)據(jù)文件9.4.3 擴(kuò)展

28、表空間9.4 表空間和數(shù)據(jù)文件的維護(hù)1指定現(xiàn)有數(shù)據(jù)文件自動(dòng)擴(kuò)展可在create database、create tablespace、alter tablespaceadd datafile命令中運(yùn)用選項(xiàng)AUTOEXTEND ON 可以使數(shù)據(jù)文件自動(dòng)擴(kuò)展alter databasedatafile e:oradataexamdbpioneerst01_2.dbf AUTOEXTEND ON NEXT 1M MAXSIZE 20M;數(shù)據(jù)庫已更改9.4.3 擴(kuò)展表空間可經(jīng)過查詢dba_data_files數(shù)據(jù)字典了解某個(gè)數(shù)據(jù)文件的自動(dòng)擴(kuò)展選項(xiàng)能否允許9.4 表空間和數(shù)據(jù)文件的維護(hù)2.改動(dòng)現(xiàn)有數(shù)據(jù)文

29、件大小 經(jīng)過添加表空間中已有數(shù)據(jù)文件的大小,也可以添加表空間的存儲(chǔ)空間alter databasedatafile e:oradataexamdbpioneeruserst01_1.dbfresize 100M;數(shù)據(jù)庫已更改9.4.3 擴(kuò)展表空間9.4 表空間和數(shù)據(jù)文件的維護(hù)3添加新數(shù)據(jù)文件可以運(yùn)用alter tablespace . add datafile命令向表空間添加數(shù)據(jù)文件以添加表空間的容量。alter tablespace pioneeruserts01add datafile e:oradataexamdbpioneerst01_2.dbf size 3M;表空間已更改提示:假設(shè)

30、要為暫時(shí)表空間添加新的暫時(shí)數(shù)據(jù)文件,必需運(yùn)用alter tablespace .add tempfile語句9.4.3 擴(kuò)展表空間9.4 表空間和數(shù)據(jù)文件的維護(hù) 在oracle 10g中,默許系統(tǒng)表空間為system表空間,默許用戶表空間為users,默許的暫時(shí)表空間為temp表空間. 在創(chuàng)建數(shù)據(jù)庫時(shí),可用default tablespace指定其它的表空間為默許的表空間,也可運(yùn)用alter database 命令指定默許的表空間1設(shè)置默許用戶表空間9.4.4 設(shè)置默許表空間Alter database default tablespace pioneeruserts01;9.4 表空間和數(shù)據(jù)

31、文件的維護(hù)2)設(shè)置默許暫時(shí)表空間可消除運(yùn)用SYSTEM 表空間對(duì)暫時(shí)數(shù)據(jù)進(jìn)展排序的景象9.4.4 設(shè)置默許表空間Alter database default temporary tablespace pioneertmpts01;3)經(jīng)過查詢 DATABASE_PROPERTIES 可找到數(shù)據(jù)庫的默許永久表空間和暫時(shí)表空間:SQL select property_name,property_value from database_properties where property_name like DEFAULT%;9.4 表空間和數(shù)據(jù)文件的維護(hù)4)切換回退UNDO表空間經(jīng)過修正初始化參數(shù)U

32、NDO_TABLESPACE可改動(dòng)UNDO表空間9.4.4 設(shè)置默許表空間SQLAlter system set UNDO_TABLESPACE=pioneerundots01;5)經(jīng)過查看undo_tablespace參數(shù) 可找到數(shù)據(jù)庫的默許的回退表空間SQL show parameter undo_tablespace; 9.4 表空間和數(shù)據(jù)文件的維護(hù)主要有以下幾種形狀:聯(lián)機(jī)脫機(jī)只讀或可讀寫9.4.5 修正表空間的可用性 1.表空間的形狀 處于不同形狀的表空間,其運(yùn)用方式有所不同。經(jīng)過人工改動(dòng)表空間的形狀,可以控制表空間的可用性、平安性,也能為備份、恢復(fù)等任務(wù)提供預(yù)備和保證聯(lián)機(jī) ONLIN

33、E為正常任務(wù)形狀,用戶可以正常訪問此表空間中的數(shù)據(jù)。脫機(jī)(OFFLINE)表空間以及表空間中的數(shù)據(jù)暫時(shí)不可用,用戶不能訪問此表空間中的數(shù)據(jù)9.4 表空間和數(shù)據(jù)文件的維護(hù)9.4.5 表空間的可用性 1.表空間的形狀注:SYSTEMSYSAUXTEMPUNDOTBS1表空間不能被脫機(jī)脫機(jī)(OFFLINE)以下情況,需求對(duì)表空間進(jìn)展脫機(jī):數(shù)據(jù)庫處于翻開形狀下挪動(dòng)數(shù)據(jù)文件數(shù)據(jù)庫處于翻開形狀下恢復(fù)一個(gè)表空間或一個(gè)數(shù)據(jù)文件執(zhí)行對(duì)表空間的脫機(jī)備份 使數(shù)據(jù)庫的一部分不可以被訪問 ,而其他部分可以被正常訪問9.4 表空間和數(shù)據(jù)文件的維護(hù)9.4.5 表空間的可用性 1.表空間的形狀有四種脫機(jī)方式正常normal

34、默許方式 暫時(shí)temporary 立刻immediate 用于恢復(fù)for recovery 9.4 表空間和數(shù)據(jù)文件的維護(hù)9.4. 6 表空間的可用性 1.表空間的形狀脫機(jī)(OFFLINE)讀寫形狀可讀寫(READ WRITE) 默許形狀聯(lián)機(jī)表空間是可讀寫的只讀(READ ONLY)用戶只能對(duì)此表空間中的數(shù)據(jù)進(jìn)展讀操作。9.4 表空間和數(shù)據(jù)文件的維護(hù)9.4. 6 表空間的可用性 1.表空間的形狀9.4 表空間和數(shù)據(jù)文件的維護(hù)9.4. 6 表空間的可用性 2.查看表空間的形狀SQL select tablespace_name,status from dba_tablespaces;9.4 表空

35、間和數(shù)據(jù)文件的維護(hù)9.4.5 表空間的可用性 3.修正表空間的形狀1使表空間聯(lián)機(jī)或脫機(jī)語法:alter TABLESPACE tablespacenameonline |offline normal|temporary|immediate|for recover把一個(gè)表空間設(shè)為脫機(jī)四種方式中的任一方式【例1】 使表空間脫機(jī)【例2】 使表空間聯(lián)機(jī)9.4.5 表空間的可用性 9.4 表空間和數(shù)據(jù)文件的維護(hù)3.修正表空間的形狀alter tablespace pioneeruserts02 offline normal; 或 alter tablespace pioneeruserts02 offl

36、ine immediate;可省略alter tablespace pioneeruserts02 online ;1使表空間聯(lián)機(jī)或脫機(jī)注:當(dāng)處于offline形狀時(shí),就不能訪問該表空間,否那么將會(huì)出錯(cuò)?!纠?】在已脫機(jī)的pioneerts01表空間中創(chuàng)建一個(gè)emp表SQLcreate table emp (no number(6), name varchar2(10) tablespace pioneeruserts01;Create table emp*ora-01542:表空間pioneerts01脫機(jī),無法在其中分配空間9.4.5 表空間的可用性 9.4 表空間和數(shù)據(jù)文件的維護(hù)3.修正

37、表空間的形狀9.4 表空間和數(shù)據(jù)文件的維護(hù)2)使表空間只讀或可讀寫9.4.5 表空間的可用性 3.修正表空間的形狀SQLalter tablespace pioneeruserts01 read only或SQL alter tablespace pioneeruserts01 read write;【例4】9.4 表空間和數(shù)據(jù)文件的維護(hù)9.4.5表空間的可用性 3.修正表空間的形狀(1)處于只讀形狀時(shí),就不能訪問該表空間,否那么將會(huì)出錯(cuò)(2)但處于只讀形狀時(shí),依然允許執(zhí)行drop操作刪除該表空間上的對(duì)象(3) 假設(shè)表空間還處于脫機(jī)形狀,就不能將其修正為只讀,否那么也會(huì)出錯(cuò)4SYSTEMSYS

38、AUXTEMPUNDOTBS1表空間不能被只讀5處于讀寫形狀的表空間不能再將其修正為讀寫形狀,否那么也會(huì)出錯(cuò)。2)使表空間只讀或可讀寫 留意啦!留意1.在oracle 10g之前,不能修正表空間的稱號(hào)。即修正表空間稱號(hào)是oracle 10g特有的,在此之前不能實(shí)現(xiàn)該功能2. SYSTEMSYSAUXTEMPUNDOTBS1表空間的稱號(hào)不能被修正3.當(dāng)表空間或其任何數(shù)據(jù)文件處于offline形狀時(shí),不能修正該表空間的稱號(hào),否那么會(huì)出錯(cuò)。9.4 表空間和數(shù)據(jù)文件的維護(hù)4.修正表空間的稱號(hào) 運(yùn)用rename選項(xiàng)SQLalter tablespace pioneeruserts01 rename to

39、 pioneeruserts01_new;9.4.5表空間的可用性 9.4 表空間和數(shù)據(jù)文件的維護(hù)與表空間類似,可經(jīng)過改動(dòng)數(shù)據(jù)文件或暫時(shí)數(shù)據(jù)文件的聯(lián)機(jī)、脫機(jī)形狀來改動(dòng)數(shù)據(jù)文件的可用性。1、在ARCHIVELOG方式中使數(shù)據(jù)文件聯(lián)機(jī)或脫機(jī)只需求運(yùn)用包括datafile子句的alter database語句【例5】 使pioneerts01_2.dbf數(shù)據(jù)文件聯(lián)機(jī)/脫機(jī)SQLalter database datafile e:oradataexamdbpioneerts01_2.dbf online/offline;數(shù)據(jù)庫已更改9.4.6 數(shù)據(jù)文件的可用性注:使數(shù)據(jù)文件脫機(jī),數(shù)據(jù)庫必需處于ARCH

40、IVELOG方式,否那么會(huì)有錯(cuò)誤提示【例6】 假設(shè)數(shù)據(jù)庫不處于ARCHIVELOG方式,那么不允許運(yùn)用上述語句使數(shù)據(jù)文件脫機(jī)SQLalter database datafile e:oradataexamdbpioneerts01_2.dbf offline;.Ora-01145:除非啟用了介質(zhì)恢復(fù),否那么不允許立刻脫機(jī)9.4 表空間和數(shù)據(jù)文件的維護(hù)9.4.6 數(shù)據(jù)文件的可用性2、在NOARCHIVELOG方式中使數(shù)據(jù)文件脫機(jī)需求運(yùn)用同時(shí)帶有datafile和 offline drop子句的alter database語句【例7】 使pioneerts02_2.dbf數(shù)據(jù)文件脫機(jī)SQLalte

41、r database datafile e:oradataexamdbpioneerts01_2.dbf Offline drop;數(shù)據(jù)庫已更改9.4 表空間和數(shù)據(jù)文件的維護(hù)9.4.6 數(shù)據(jù)文件的可用性注:此命令脫機(jī),有能夠會(huì)喪失數(shù)據(jù)文件,且需進(jìn)展介質(zhì)恢復(fù),普通只用于暫時(shí)表空間的暫時(shí)數(shù)據(jù)文件【例8】 將pioneerts02_2.dbf數(shù)據(jù)文件聯(lián)機(jī)未先進(jìn)展介質(zhì)恢復(fù)SQLalter database datafile e:oradataexamdbpioneerts01_2.dbf online; .Ora-01113:文件11需求介質(zhì)恢復(fù)Ora-01110:數(shù)據(jù)文件11:e:oradata.9.4 表空間和數(shù)據(jù)文件的維護(hù)9.4.6 數(shù)據(jù)文件的可用性3、修正表空間中一切數(shù)據(jù)文件的可用性在ARCHIVELOG方式下脫機(jī)和聯(lián)機(jī)的語句為:Alter tablespace 表空間名 datafileonline|offlineAlter tablespa

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論