Oracle數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)
oracle的體系邏輯結(jié)構(gòu)
oracle 數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)是:
?。?)表空間(TABLESPACE) ,包括:系統(tǒng)表空間、回滾段表空間、臨時(shí)表空間、用戶表空間(除用戶表空間外其他三張表空間有各自特定的用途,不可隨意更改和破壞)
在建表時(shí),可以指定表空間,例如: create table t(id int) tablespace tbs_test;
建各類表空間的方法:
① 普通數(shù)據(jù)表空間
create tablespace TBS_LJB(表空間名) datafile 'E:\ORADATA\ORA11\DATAFILE\TBS_LJB_01.DBF'(數(shù)據(jù)文件全路徑) size 100M(大?。?/div> extent management local --(這兩句,在oracle 10g及以上版本,可以取消) segment space management auto; |
②臨時(shí)表空間
CREATE TEMPORARY TABLESPACE temp_ljb
TEMPFILE 'E:\ORADATA\ORA11\DATAFILE\TMP_LJB.DBF' SIZE 100M;
③回滾段表空間
create undo tablespace undotbs2
datafile 'E:\ORADATA\ORA11\DATAFILE\UNDOTBS2.DBF' size 100M;
補(bǔ)充:
1、建用戶,并將先前建的表空間 tbs_ljb 和臨時(shí)表空間 temp_ljb 作為 ljb 用戶的默認(rèn)使用空間。
create user ljb identified by ljb default tablespace tbs_ljb temporary tablespace temp_ljb; -- 賦給ljb dba權(quán)限 grant dba to ljb; |
2、如果表空間不足,可以有兩種方法:
第一種,增加數(shù)據(jù)文件:
ALTER TABLESPACE TBS_LJB(表空間名) ADD DATAFILE '......'(數(shù)據(jù)文件全路徑名) SIZE 100M;
第二種,把表空間設(shè)置為自動(dòng)擴(kuò)展:
ALTER DATABASE DATAFILE '.......'(數(shù)據(jù)文件全路徑名) autoextend on; (在創(chuàng)建表空間時(shí),就可以加上這個(gè)關(guān)鍵字,表示該表空間自動(dòng)擴(kuò)展)
3、刪除表空間
drop tablespace TBS_LJB
including contents and datafile;
如果表空間有數(shù)據(jù),不增加 including contents 將無法刪除成功,增加 and datafiles 關(guān)鍵字在linux 及 unix 下可自動(dòng)刪除數(shù)據(jù)文件,而在windows 環(huán)境下需要手動(dòng)刪除
4、UNDO 表空間和 TEMP 表空間在數(shù)據(jù)庫(kù)建好是必然已經(jīng)創(chuàng)建好了,不過,它們都可以新建,并且用戶都可以指定新建的空間。
5、oracle 可以為不同的用戶指定不同的臨時(shí)表空間,而且可以為同一用戶的不同session 設(shè)置不同的臨時(shí)表空間(臨時(shí)表空間組),從而減緩IO 競(jìng)爭(zhēng)。
?。?)段(SEGMENT)
每建立一張表,往往對(duì)應(yīng)一個(gè)段,如果是分區(qū)表,那么各個(gè)分區(qū)又獨(dú)立成段。在表上建一個(gè)索引,則又會(huì)有一個(gè)對(duì)應(yīng)的索引段。
?。?)區(qū)(EXTENT)
oracle 分配空間的最小單位
?。?)塊(BLOCK)
oracle 的最小邏輯數(shù)據(jù)單位

11
posted on 2014-04-16 11:23 順其自然EVO 閱讀(160) 評(píng)論(0) 編輯 收藏 所屬分類: 數(shù)據(jù)庫(kù)