第4章Oracle資料學(xué)習(xí)ppt課件_第1頁
第4章Oracle資料學(xué)習(xí)ppt課件_第2頁
已閱讀5頁,還剩33頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第4章 管理表空間本章要點(diǎn):熟練掌握創(chuàng)建表空間的方法。掌握如何設(shè)置表空間的形狀。了解如何重命名表空間。掌握表空間中數(shù)據(jù)文件的管理。了解暫時表空間。了解大文件表空間。了解非規(guī)范數(shù)據(jù)塊表空間。了解吊銷表空間的作用。掌握創(chuàng)建與管理吊銷表空間的方法。了解與表空間和數(shù)據(jù)文件相關(guān)的數(shù)據(jù)字典。24.1 根本表空間在創(chuàng)建數(shù)據(jù)庫時,Oracle會自動地創(chuàng)建一系列表空間,例如system表空間。用戶可以運(yùn)用這些表空間進(jìn)展數(shù)據(jù)操作。但是,在實(shí)踐運(yùn)用中,假設(shè)一切用戶都運(yùn)用系統(tǒng)自動創(chuàng)建的這幾個表空間,將會嚴(yán)重影響I/O性能。34.1.1 創(chuàng)建表空間創(chuàng)建表空間需求運(yùn)用CREATE TABLESPACE語句。其根本語法如下

2、:CREATE TEMPORARY | UNDO TABLESPACE tablespace_name DATAFILE | TEMPFILE file_name SIZE size K | M REUSE AUTOEXTEND OFF | ON NEXT number K | M MAXSIZE UNLIMITED | number K | M , . MININUM EXTENT number K | M BLOCKSIZE number K ONLINE | OFFLINE LOGGING | NOLOGGING FORCE LOGGING DEFAULT STORAGE storage

3、 COMPRESS | NOCOMPRESS PERMANENT | TEMPORARY EXTENT MANAGEMENT DICTIONARY | LOCAL AUTOALLOCATE | UNIFORM SIZE number K | M SEGMENT SPACE MANAGEMENT AUTO | MANUAL ;44.1.1 創(chuàng)建表空間語法闡明如下。(1)TEMPORARY | UNDO(2)tablespace_name(3)DATAFILE | TEMPFILE file_name(4)SIZE size(5)REUSE(6)AUTOEXTEND OFF | ON(7)NEXT

4、 number (8)MAXSIZE UNLIMITED | number(9)MININUM EXTENT number(10)BLOCKSIZE number(11)ONLINE | OFFLINE(12)LOGGING | NOLOGGING(13)FORCE LOGGING(14)DEFAULT STORAGE storage(15)COMPRESS | NOCOMPRESS(16)PERMANENT | TEMPORARY(17)EXTENT MANAGEMENT DICTIONARY | LOCAL(18)AUTOALLOCATE | UNIFORM SIZE number(19)

5、SEGMENT SPACE MANAGEMENT AUTO | MANUAL54.1.2 表空間形狀屬性1在線(ONLINE)語句方式如下:ALTER TABLESPACE tablespace_name ONLINE;2離線(OFFLINE)語句方式如下:ALTER TABLESPACE tablespace_name OFFLINE parameter;3只讀(READ ONLY)語句方式如下:ALTER TABLESPACE tablespace_name READ ONLY;4讀寫(READ WRITE)語句方式如下:ALTER TABLESPACE tablespace_name R

6、EAD WRITE;64.1.3 重命名表空間重命名表空間的語法如下:ALTER TABLESPACE tablespace_name RENAME TO new_tablespace_name;【例4.4】修正myspace表空間的稱號為myspace2,語句如下:ALTER TABLESPACE myspace RENAME TO myspace2;74.1.4 修正表空間中數(shù)據(jù)文件的大小【例4.5】經(jīng)過數(shù)據(jù)字典dba_free_space查看myspace表空間的空閑空間信息,如下:SQL SELECT tablespace_name , bytes , blocks 2 FROM db

7、a_free_space 3 WHERE tablespace_name = MYSPACE;TABLESPACE_NAME BYTES BLOCKS- -MYSPACE 20905984 2552其中,bytes字段以字節(jié)的方式表示表空間的空閑空間大??;blocks字段那么以數(shù)據(jù)塊數(shù)目的方式表示表空間空閑空間的大小。84.1.4 修正表空間中數(shù)據(jù)文件的大小【例4.6】經(jīng)過數(shù)據(jù)字典dba_data_files查看myspace表空間的數(shù)據(jù)文件信息,如下:SQL COLUMN file_name FORMAT A35;SQL COLUMN tablespace_name FORMAT A15;S

8、QL SELECT tablespace_name , file_name , bytes 2 FROM dba_data_files 3 WHERE tablespace_name = MYSPACE;TABLESPACE_NAME FILE_NAME BYTES - -MYSPACE E:APPADMINISTRATORORADATAORCL20971520 MYSPACE.DBF其中,file_name字段表示數(shù)據(jù)文件的稱號與途徑;bytes字段表示數(shù)據(jù)文件的大小。 94.1.4 修正表空間中數(shù)據(jù)文件的大小【例4.7】修正myspace表空間對應(yīng)的數(shù)據(jù)文件的大小,如下:SQL ALTER

9、 DATABASE 2 DATAFILE E:APPADMINISTRATORORADATAORCLMYSPACE.DBF 3 RESIZE 40M;數(shù)據(jù)庫已更改。104.1.5 添加表空間的數(shù)據(jù)文件添加新的數(shù)據(jù)文件需求運(yùn)用ALTER TABLESPACE語句,其語法如下:ALTER TABLESPACE tablespace_nameADD DATAFILE file_name SIZE number K | M AUTOEXTEND OFF | ON NEXT number K | M MAXSIZE UNLIMITED | number K | M , .;114.1.5 添加表空間的數(shù)

10、據(jù)文件【例4.8】為myspace表空間添加兩個新的數(shù)據(jù)文件,如下:SQL ALTER TABLESPACE myspace 2 ADD DATAFILE 3 E:appAdministratororadataorclmyspace02.dbf 4 SIZE 10M 5 AUTOEXTEND ON NEXT 5M MAXSIZE 40M, 6 E:appAdministratororadataorclmyspace03.dbf 7 SIZE 10M 8 AUTOEXTEND ON NEXT 5M MAXSIZE 40M;表空間已更改。上述語句為myspace表空間在E:appAdministr

11、atororadataorcl目錄下添加了兩個數(shù)據(jù)文件,稱號分別為myspace02.dbf和myspace03.dbf。124.1.6 刪除表空間的數(shù)據(jù)文件刪除表空間的數(shù)據(jù)文件的語法如下:ALTER TABLESPACE tablespace_nameDROP DATAFILE file_name;【例4.9】刪除myspace表空間數(shù)據(jù)文件E:appAdministratororadataorclmyspace03.dbf,如下:SQL ALTER TABLESPACE myspace 2 DROP DATAFILE E:appAdministratororadataorclmyspace

12、03.dbf;表空間已更改。134.1.7 修正表空間中數(shù)據(jù)文件的自動擴(kuò)展性在創(chuàng)建表空間時,可以設(shè)置數(shù)據(jù)文件的自動擴(kuò)展性。在為表空間添加新的數(shù)據(jù)文件時,也可以設(shè)置新數(shù)據(jù)文件的自動擴(kuò)展性。而對于已創(chuàng)建的表空間中的已有數(shù)據(jù)文件,那么可以運(yùn)用ALTER DATABASE語句修正其自動擴(kuò)展性。語法如下:ALTER DATABASE DATAFILE file_nameAUTOEXTEND OFF | ON NEXT number K | M MAXSIZE UNLIMITED | number K | M 144.1.7 修正表空間中數(shù)據(jù)文件的自動擴(kuò)展性【例4.10】修正myspace表空間中數(shù)據(jù)文件

13、的自動擴(kuò)展性,如下:SQL ALTER DATABASE 2 DATAFILE E:appAdministratororadataorclmyspace02.dbf 3 AUTOEXTEND OFF;數(shù)據(jù)庫已更改。SQL ALTER DATABASE 2 DATAFILE E:appAdministratororadataorclmyspace02.dbf 3 AUTOEXTEND ON 4 NEXT 5M MAXSIZE 40M;數(shù)據(jù)庫已更改。上述兩條SQL語句中,第一條語句用于封鎖myspace表空間的myspace02.dbf文件的自動擴(kuò)展性,第二條語句用于再次為myspace02.db

14、f文件設(shè)置自動擴(kuò)展性。154.1.8 修正表空間中數(shù)據(jù)文件的形狀數(shù)據(jù)文件的形狀主要有3種:ONLINE、OFFLINE和OFFLINE DROP。設(shè)置數(shù)據(jù)文件形狀的語法如下:ALTER DATABASE DATAFILE file_name ONLINE | OFFLINE | OFFLINE DROP其中,ONLINE表示數(shù)據(jù)文件可以運(yùn)用;OFFLINE表示數(shù)據(jù)文件不可運(yùn)用,用于數(shù)據(jù)庫運(yùn)轉(zhuǎn)在歸檔方式下的情況;OFFLINE DROP與OFFLINE一樣用于設(shè)置數(shù)據(jù)文件不可用,但它用于數(shù)據(jù)庫運(yùn)轉(zhuǎn)在非歸檔方式下的情況。164.1.9 挪動表空間中的數(shù)據(jù)文件【例4.12】挪動myspace表空間中

15、數(shù)據(jù)文件myspace02.dbf的步驟如下。(1)修正myspace表空間的形狀為OFFLINE,如下:SQL ALTER TABLESPACE myspace OFFLINE;表空間已更改。(2)將磁盤中的myspace02.dbf文件挪動到新的目錄中 (3)運(yùn)用ALTER TABLESPACE語句,將myspace表空間中myspace02.dbf文件的原稱號和途徑修正為新稱號和途徑 (4)修正myspace表空間的形狀為ONLINE,如下:SQL ALTER TABLESPACE myspace ONLINE;表空間已更改。檢查文件能否挪動勝利,也就是檢查myspace表空間的數(shù)據(jù)文件

16、中能否包含了新的數(shù)據(jù)文件。 174.1.10 刪除表空間刪除表空間需求運(yùn)用DROP TABLESPACE語句,其語法如下:DROP TABLESPACE tablespace_name INCLUDING CONTENTS AND DATAFILES 語法闡明如下。(1)INCLUDING CONTENTS(2)AND DATAFILES【例4.13】刪除表空間myspace,并同時刪除該表空間中的一切數(shù)據(jù)庫對象,以及操作系統(tǒng)中與之相對應(yīng)的數(shù)據(jù)文件,如下:SQL DROP TABLESPACE myspace 2 INCLUDING CONTENTS AND DATAFILES;表空間已刪除。

17、184.2 暫時表空間暫時表空間是一個磁盤空間,主要用于存儲用戶在執(zhí)行ORDER BY等語句進(jìn)展排序或匯總時產(chǎn)生的暫時數(shù)據(jù),它是一切用戶公用的。默許情況下,一切用戶都運(yùn)用temp作為暫時表空間。但是也允許運(yùn)用其他表空間作為暫時表空間,這需求在創(chuàng)建用戶時進(jìn)展指定。194.2.1 創(chuàng)建暫時表空間創(chuàng)建暫時表空間時需求運(yùn)用TEMPORARY關(guān)鍵字,并且與暫時表空間對應(yīng)的是暫時文件,由TEMPFILE關(guān)鍵字指定,而數(shù)據(jù)文件由DATAFILE關(guān)鍵字指定?!纠?.14】創(chuàng)建一個暫時表空間mytemp,如下:SQL CREATE TEMPORARY TABLESPACE mytemp 2 TEMPFILE F

18、:oraclefilemytemp.dbf 3 SIZE 10M 4 AUTOEXTEND ON NEXT 2M MAXSIZE 20M;表空間已創(chuàng)建。204.2.1 創(chuàng)建暫時表空間【例4.15】經(jīng)過數(shù)據(jù)字典v$tempfile,查看暫時表空間mytemp的暫時文件信息,如下:SQL COLUMN file_name FORMAT A40;SQL COLUMN tablespace_name FORMAT A15;SQL SELECT tablespace_name , file_name , bytes 2 FROM dba_temp_files 3 WHERE tablespace_nam

19、e = MYTEMP;TABLESPACE_NAME FILE_NAME BYTES- - -MYTEMP F:ORACLEFILEMYTEMP.DBF 10485760214.2.2 創(chuàng)建與管理暫時表空間組1創(chuàng)建暫時表空間組暫時表空間組不需求特別創(chuàng)建,只需求在創(chuàng)建暫時表空間時,運(yùn)用TABLESPACE GROUP語句為其指定一個組即可。2查看暫時表空間組信息假設(shè)要查詢一個暫時表空間組中的暫時表空間信息,可以運(yùn)用數(shù)據(jù)字典dba_tablespace_ groups。3挪動暫時表空間可以運(yùn)用ALTER TABLESPACE語句,將暫時表空間從一個組挪動到另一個組中,實(shí)踐上也就是修正暫時表空間所在

20、的組。目的組同樣可以是已存在的,也可以是不存在的。4刪除暫時表空間組一個暫時表空間組中至少需求存在一個暫時表空間,當(dāng)組中的一切暫時表空間都被刪除或挪動到其他組中后,該組就被自動刪除了。224.3 大文件表空間大文件表空間是Oracle 10g引進(jìn)的一個新表空間類型,主要用于處理存儲文件大小不夠的問題。 創(chuàng)建大文件表空間需求運(yùn)用BIGFILE關(guān)鍵字,而且只能為其指定一個數(shù)據(jù)文件或暫時文件?!纠?.19】創(chuàng)建一個大文件表空間mybigspace,如下:SQL CREATE BIGFILE TABLESPACE mybigspace 2 DATAFILE F:oraclefilemybigspace

21、.dbf 3 SIZE 10M;表空間已創(chuàng)建。234.3 大文件表空間【例4.20】經(jīng)過數(shù)據(jù)字典dba_tablespaces查看當(dāng)前數(shù)據(jù)庫中的表空間的類型,如下:SQL SELECT tablespace_name , bigfile 2 FROM dba_tablespaces;TABLESPACE_NAME BIG- -SYSTEM NOSYSAUX NOUNDOTBS1 NOTEMP NOUSERS NOMYTEMP NOMYBIGSPACE YES已選擇7行。假設(shè)bigfile字段值為NO,那么表示對應(yīng)的表空間的類型不是BIGFILE,即為SMALLFILE;假設(shè)bigfile字段值

22、為YES,那么表示對應(yīng)的表空間的類型為BIGFILE。244.4 非規(guī)范數(shù)據(jù)塊表空間非規(guī)范數(shù)據(jù)塊表空間是指其數(shù)據(jù)塊大小不基于規(guī)范數(shù)據(jù)塊大小的表空間。 運(yùn)用SHOW PARAMETER語句可以查看db_block_size參數(shù)的信息,如下:SQL SHOW PARAMETER db_block_size;NAME TYPE VALUE- -db_block_size integer 8192254.4 非規(guī)范數(shù)據(jù)塊表空間【例4.21】創(chuàng)建一個非規(guī)范數(shù)據(jù)塊表空間nonstandard,其數(shù)據(jù)塊大小設(shè)置為16KB。步驟如下。(1)運(yùn)用SHOW PARAMWTER語句查看數(shù)據(jù)緩沖區(qū)參數(shù)db_16k_c

23、ache_size的值 (2)運(yùn)用ALTER SYSTEM語句修正參數(shù)db_16k_cache_size的值 (3)創(chuàng)建表空間nonstandard,指定其數(shù)據(jù)塊大小為16KB 264.5 設(shè)置默許表空間Oracle允許運(yùn)用非users表空間作為默許的永久性表空間,運(yùn)用非temp表空間作為默許暫時表空間。設(shè)置默許表空間需求運(yùn)用ALTER DATABASE語句,語法如下:ALTER DATABASE DEFAULT TEMPORARY TABLESPACE tablespace_name;假設(shè)運(yùn)用TEMPORARY關(guān)鍵字,那么表示設(shè)置默許暫時表空間;假設(shè)不運(yùn)用該關(guān)鍵字,那么表示設(shè)置默許永久性表空

24、間。274.5 設(shè)置默許表空間【例4.22】將myspace表空間設(shè)置為默許的永久性表空間,將mytemp表空間設(shè)置為默許暫時表空間,如下:SQL ALTER DATABASE DEFAULT TABLESPACE myspace;數(shù)據(jù)庫已更改。SQL ALTER DATABASE DEFAULT TEMPORARY TABLESPACE mytemp;數(shù)據(jù)庫已更改。查詢數(shù)據(jù)字典database_properties,檢查默許表空間能否設(shè)置勝利,如下:SQL SELECT property_name , property_value , description 2 FROM database_

25、properties 3 WHERE property_name 4 IN (DEFAULT_PERMANENT_TABLESPACE , DEFAULT_TEMP_TABLESPACE);PROPERTY_NAME PROPERTY_VALUE DESCRIPTION- -DEFAULT_TEMP_TABLESPACE MYTEMP Name of default temporary tablespaceDEFAULT_PERMANENT_TABLESPACE MYSPACE Name of default permanent tablespace284.6 吊銷表空間用戶對數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)

26、展修正后,Oracle將會把修正前的數(shù)據(jù)存儲到吊銷表空間中,假設(shè)用戶需求對數(shù)據(jù)進(jìn)展恢復(fù),就會運(yùn)用到吊銷表空間中存儲的吊銷數(shù)據(jù)。本節(jié)將引見如何創(chuàng)建與管理吊銷表空間。對于詳細(xì)的數(shù)據(jù)吊銷操作將在本書Oracle閃回技術(shù)章節(jié)中引見。294.6.1 管理吊銷表空間的方式Oracle 11g支持兩種管理吊銷表空間的方式:回退段吊銷管理(Rollback Segments Undo,RSU)和自動吊銷管理(System Managed Undo,SMU)。 1自動吊銷管理假設(shè)選擇運(yùn)用自動吊銷管理方式,那么應(yīng)將參數(shù)undo_management的值設(shè)置為AUTO,并且需求在數(shù)據(jù)庫中創(chuàng)建一個吊銷表空間。默許情況

27、下,Oracle系統(tǒng)在安裝時會自動創(chuàng)建一個吊銷表空間undotbs1。系統(tǒng)當(dāng)前所運(yùn)用的吊銷表空間由參數(shù)undo_tablespace決議。運(yùn)用SHOW PARAMETER undo語句可以查看當(dāng)前數(shù)據(jù)庫的吊銷表空間的設(shè)置,如下:SQL SHOW PARAMETER undo;NAME TYPE VALUE- -undo_management string AUTOundo_retention integer 900undo_tablespace string UNDOTBS1304.6.1 管理吊銷表空間的方式2回退段吊銷管理假設(shè)選擇運(yùn)用回退段吊銷管理方式,那么應(yīng)將參數(shù)undo_managem

28、ent的值設(shè)置為MANUAL,并且需求設(shè)置以下參數(shù)。rollback_segments:設(shè)置數(shù)據(jù)庫所運(yùn)用的回退段稱號。transactions:設(shè)置系統(tǒng)中的事務(wù)總數(shù)。transactions_per_rollback_segment:指定回退段可以效力的事務(wù)個數(shù)。max_rollback_segments:設(shè)置回退段的最大個數(shù)。314.6.2 創(chuàng)建與管理吊銷表空間1創(chuàng)建吊銷表空間創(chuàng)建吊銷表空間需求運(yùn)用CREATE UNDO TABLESPACE語句,與創(chuàng)建普通表空間類似,但也有其特定的限制,闡明如下:吊銷表空間只能運(yùn)用本地化管理表空間類型,即EXTENT MANAGEMENT子句只能指定LOC

29、AL(默許值)。吊銷表空間的盤區(qū)管理方式只能運(yùn)用AUTOALLOCATE(默許值),即由Oracle系統(tǒng)自動分配盤區(qū)大小。吊銷表空間的段的管理方式只能為手動管理方式,即SEGMENT SPACE MANAGEMENT只能指定MANUAL。假設(shè)是創(chuàng)建普通表空間,那么此選項(xiàng)默以為AUTO,而假設(shè)是創(chuàng)建吊銷表空間,那么此選項(xiàng)默以為MANUAL。324.6.2 創(chuàng)建與管理吊銷表空間2修正吊銷表空間的數(shù)據(jù)文件由于吊銷表空間主要由Oracle系統(tǒng)自動管理,所以對吊銷表空間的數(shù)據(jù)文件的修正也主要限于以下幾種方式:為吊銷表空間添加新的數(shù)據(jù)文件。挪動吊銷表空間的數(shù)據(jù)文件。設(shè)置吊銷表空間的數(shù)據(jù)文件的形狀為ONINE或OFFLINE。334.6.2 創(chuàng)建與管理吊銷表空間3切換吊銷表空間一個數(shù)據(jù)庫中可以有多個吊銷表空間,但數(shù)據(jù)庫一次只能運(yùn)用一個吊銷表空間。默許情況下,數(shù)據(jù)庫運(yùn)用的是系統(tǒng)自動創(chuàng)建的undotbs1吊銷表空間。假設(shè)要將數(shù)據(jù)庫運(yùn)用的吊銷表空間切換成其他表空間,修正參數(shù)undo_tablespace的值即可,這需求運(yùn)用ALTER SYSTEM語句。切

溫馨提示

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

最新文檔

評論

0/150

提交評論