oracle的邏輯結構
oracle的邏輯元件包括:資料庫database->表空間tablespace->段segment->區extent->資料塊block
(1)表空間是資料庫中最大的邏輯單位,一個oracle資料庫至少包含一個表空間,就是名為SYSTEM的系統表空間。每個表空間是由一個或多個資料檔案組成的,一個資料檔案只能與一個表空間相關聯,表空間的大小等於構成這個表空間的所有資料檔案的大小之和。
透過DBCA建立的oracle10g/oracle11g資料庫預設包含如下表空間SYSTEM,SYSAUX,TEMP,UNDOTBS1,USERS,EXAMPLE。
SYSTEM是系統表空間,存放系統的最基本的資訊,如果SYSTEM表空間壞掉,oracle將無法啟動。
SYSAUX是從10g中引入的,作為SYSTEM的輔助表空間,用以減少SYSTEM表空間的負荷。以前其他表空間中的一些元件,現在放到SYSAUX表空間中了。
TEMP是臨時表空間,當排序不能在分配的空間中完成時,就會使用磁碟排序的方式,即在oracle例項中的臨時表空間中進行。
UNDOTBS1是撤銷表空間,是UNDO型別的表空間,儲存使用者進行DML操作中,修改前的資料。
USERS是資料庫預設的永久表空間。
EXAMPLE是資料庫測試用例所涉及的表的所屬表空間。
(2)段是構成表空間的邏輯結構,段是由一組區組成的。
按照段所儲存資料的特徵,將段分為若干種型別,主要有資料段,索引段,回退段和臨時段。
透過dba_segments檢視資料庫中的段:
SYS@orcl 06-SEP-14>col segment_name for a15
SYS@orcl 06-SEP-14>col tablespace_name for a15
SYS@orcl 06-SEP-14>set pause on
SYS@orcl 06-SEP-14>select segment_name,segment_type,tablespace_name
2 from dba_segments;
SEGMENT_NAME SEGMENT_TYPE TABLESPACE_NAME
--------------- ------------------ ---------------
CON$ TABLE SYSTEM
UNDO$ TABLE SYSTEM
PROXY_ROLE_DATA TABLE SYSTEM
$
FILE$ TABLE SYSTEM
PROXY_DATA$ TABLE SYSTEM
BOOTSTRAP$ TABLE SYSTEM
OBJ$ TABLE SYSTEM
OBJERROR$ TABLE SYSTEM
OBJAUTH$ TABLE SYSTEM
(3)區是oracle資料庫分配資料的單位,區為段分配空間,它由連續的資料塊組成。
當段中的所有空間已完全使用時,系統自動為該段分配一個新區,區不能跨越資料檔案存在,只能存在一個資料檔案中。
可以透過dba_extents來檢視:
SYS@orcl 06-SEP-14>select segment_name,tablespace_name,blocks from dba_extents;
SEGMENT_NAME TABLESPACE_NAME BLOCKS
--------------- --------------- ----------
SYSTEM SYSTEM 8
SYSTEM SYSTEM 8
SYSTEM SYSTEM 8
SYSTEM SYSTEM 8
SYSTEM SYSTEM 8
SYSTEM SYSTEM 8
SYS_LOB00000523 SYSTEM 8
23C00005$$
SYS_LOB00000135 SYSTEM 8
07C00003$$
(4)資料塊是oracle伺服器所能讀取或寫入的最小儲存單位。
oracle以資料塊為單位管理資料檔案的儲存空間,oracle的資料塊由操作體統的資料塊組成。
檢視當前資料庫中的資料塊大小:
SYS@orcl 06-SEP-14>show parameter db_block_size
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_block_size integer 8192
下面我們講講建立表空間的命令:
當我們建立表空間的時候,需要指定datafile來指明這個表空間所對應的資料檔案,如下:
create tablespace data01 datafile
'/u01/app/datafile/data01a.dbf' size 10m,
'/u01/app/datafile/data01b.dbf' size 10m;
資料檔案預設最多包含4194304個資料塊(2的22次方),資料塊預設為8192(8k),那麼資料檔案最大即為4194304*8k=32GB。
那麼如果我們需要建立一個大小大於32GB的表空間該怎麼辦呢?
這裡存在一個特殊語法,我們可以使用create bigfile tablespace命令來建立,但是需要注意的是,指定bigfile的表空間只能包含一個資料檔案,否則將會出現如下錯誤:
SYS@orcl 06-SEP-14>create bigfile tablespace data01
2 datafile '/u01/app/datafile/data01a.dbf' size 33g,
3 '/u01/app/datafile/data01b.dbf' size 33g;
create bigfile tablespace data01
*
ERROR at line 1:
ORA-32774: more than one file was specified for bigfile tablespace DATA
正確寫法如下:
SYS@orcl 06-SEP-14>create bigfile tablespace data01
2 datafile '/u01/app/datafile/data01.dbf' size 33g;
Tablespace created.
檢視錶空間中有哪些是屬於bigfile的:
SYS@orcl 06-SEP-14>select tablespace_name,bigfile from dba_tablespaces;
TABLESPACE_NAME BIG
-------------------- ---
SYSTEM NO
SYSAUX NO
UNDOTBS1 NO
TEMP NO
USERS NO
EXAMPLE NO
TEST NO
HH NO
GOODS NO
DATA01 YES
10 rows selected.
預設的表空間為smallfile型別,bigfile的表空間只能包含一個資料檔案,該資料檔案可以
包含4294967296(2的32次方)個資料塊。
下面說說建立表空間的詳細語句:
create tablespace xxx 表空間名稱
datafile '/xxx/../xxx.dbf' 資料檔案路徑和名稱
size xxxm 資料檔案初始大小
autoextend on 資料檔案是否自動增長
next 10m 資料檔案每次自動增長大小
maxsize 2048m 資料檔案最大檔案大小
可以指定unlimited(小檔案型別資料檔案8k塊大小為32GB)
extent management local 表空間區分配採用本地表空間管理
uniform size 128k 設定區分配的大小統一為128k
如果不指定大小,則為1M,也可以設定為autoallocate,則設定extent大小由
系統自動分配
segment space management auto 設定段中BLOCK的空間管理為auto
檢視資料檔案自動擴充套件特性和最大擴充套件大小:
SYS@orcl 06-SEP-14>col file_name for a40
SYS@orcl 06-SEP-14>select file_name,autoextensible,maxbytes/1024/1024/1024
2 from dba_data_files;
FILE_NAME AUT MAXBYTES/1024/1024/1024
---------------------------------------- --- -----------------------
/datafile/users01.dbf YES 31.9999847
/datafile/undotbs01.dbf YES 31.9999847
/datafile/sysaux01.dbf YES 31.9999847
/datafile/system01.dbf YES 31.9999847
/datafile/example01.dbf YES 31.9999847
/u01/app/datafile/test01.dbf YES 31.9999847
/datafile/hh01.dbf YES 31.9999847
/u01/app/datafile/goods01.dbf YES 31.9999847
8 rows selected.
下面講講表空間的管理方式:
表空間的管理方式有兩種:
區的管理(extent),區的管理主要用於表空間上區的分配和回收,區的管理分為兩種方式:
a)資料字典空間管理dictionary managed tablespace
透過管理兩個主要的資料字典表:UET$(Used EXtents)和FET$(Free EXtents)來實現區的分配和管理,在oracle9i以後已淘汰。
缺點:併發訪問爭用(大量訪問UET$,FET$),產生大量的redo undo,空間碎片多。
b)本地表空間管理local managed tablespace
在每個資料檔案頭部加入點陣圖區域,透過點陣圖的值(0或1)來實現區的分配和管理。
extent management local(9i以後預設方式)
具體空間分配方式:
1.autoallocate allocation_type=system
2.uniform allocation_type=uniform
建立表空間不指定區管理方式,預設為本地管理,空間分配選擇system。
可以用以下命令檢視錶空間的區管理方式以及空間分配方式:
SYS@orcl 06-SEP-14>col tablespace_name for a20
SYS@orcl 06-SEP-14>select tablespace_name,extent_management,allocation_type
2 from dba_tablespaces;
TABLESPACE_NAME EXTENT_MAN ALLOCATIO
-------------------- ---------- ---------
SYSTEM LOCAL SYSTEM
SYSAUX LOCAL SYSTEM
UNDOTBS1 LOCAL SYSTEM
TEMP LOCAL UNIFORM
USERS LOCAL SYSTEM
EXAMPLE LOCAL SYSTEM
TEST LOCAL SYSTEM
HH LOCAL SYSTEM
GOODS LOCAL SYSTEM
9 rows selected.
下面講講段的管理sgement,段的管理主要用於段中國資料塊的分配和回收,段中塊的管理方式有兩種:
MSSM(Manual Segment Space Management) 不推薦使用
ASSM(Auto System Space Management) 預設值
MSSM透過在段的段頭部分分配自由列表freelist來管理block
透過兩個引數pctfree pctused來管理block如何進出freelist
pctfree值表示預留多少block空間用於更新(百分比)
pctused值表示低於這個值(百分比),block會重新加入到freelist上,可以允許插入資料插入操作。
ASSM透過在每個段的段頭部分分配點陣圖bitmap來管理block,透過點陣圖中的值來判斷資料塊是否可用,
不需要freelist,不需要pctused。
ASSM能有效提高段的管理效率。
可用如下命令檢視段空間的管理方式:
SYS@orcl 06-SEP-14>select tablespace_name,segment_space_management
2 from dba_tablespaces;
TABLESPACE_NAME SEGMEN
-------------------- ------
SYSTEM MANUAL
SYSAUX AUTO
UNDOTBS1 MANUAL
TEMP MANUAL
USERS AUTO
EXAMPLE AUTO
TEST AUTO
HH AUTO
GOODS AUTO
9 rows selected.
當我們刪除表空間的時候可以使用including contents and datafiles來同時刪除表空間上的表和資料檔案。
drop tablespace data01 including contents and datafiles;
可以為表空間增加資料檔案:
SYS@orcl 06-SEP-14>alter tablespace data01
2 add datafile '/u01/app/datafile/data01b.dbf' size 10m;
Tablespace altered.
檢視資料檔案的編號和檔名稱:
SYS@orcl 06-SEP-14>select file#,name from v$datafile;
FILE# NAME
---------- ----------------------------------------
1 /datafile/system01.dbf
2 /datafile/sysaux01.dbf
3 /datafile/undotbs01.dbf
4 /datafile/users01.dbf
5 /datafile/example01.dbf
6 /u01/app/datafile/test01.dbf
7 /datafile/hh01.dbf
8 /u01/app/datafile/goods01.dbf
9 /u01/app/datafile/data01a.dbf
10 /u01/app/datafile/data01b.dbf
10 rows selected.
修改資料檔案的大小,可以指定資料檔案的名稱,也可以指定資料檔案的編號
可以擴大檔案,也可以縮小檔案
擴大檔案不能超過單一檔案大小限制,縮小檔案不能小於當前使用空間。
SYS@orcl 06-SEP-14>alter database
2 datafile '/u01/app/datafile/data01b.dbf' resize 20m;
Database altered.
SYS@orcl 06-SEP-14>alter database datafile 10 resize 20m;
Database altered.
SYS@orcl 06-SEP-14>select file_id,file_name,bytes/1024/1024||'MB'
2 from dba_data_files;
FILE_ID FILE_NAME BYTES/1024/1024||'MB'
---------- ---------------------------------------- ------------------------------------------
4 /datafile/users01.dbf 5MB
3 /datafile/undotbs01.dbf 60MB
2 /datafile/sysaux01.dbf 540MB
1 /datafile/system01.dbf 690MB
5 /datafile/example01.dbf 100MB
6 /u01/app/datafile/test01.dbf 100MB
7 /datafile/hh01.dbf 10MB
8 /u01/app/datafile/goods01.dbf 50MB
9 /u01/app/datafile/data01a.dbf 10MB
10 /u01/app/datafile/data01b.dbf 20MB
10 rows selected.
現在我們建立了一個使用者data01,其表空間是data01,以data01登入,建立一張表tab1:
DATA01@orcl 06-SEP-14>create table tab1(id int) tablespace data01;
Table created.
然後我們為這張表分配區:
DATA01@orcl 06-SEP-14>alter table tab1 allocate extent
2 (size 1m datafile '/u01/app/datafile/data01a.dbf');
Table altered.
DATA01@orcl 06-SEP-14>alter table tab1 allocate extent
2 (size 1m datafile '/u01/app/datafile/data01b.dbf');
Table altered.
可以用如下命令檢視錶tab1的區具體分配在哪些資料檔案上:
SYS@orcl 06-SEP-14>select distinct file_id,name from dba_extents e,v$datafile d
2 where e.owner='DATA01' and e.segment_name='TAB1'
3 and e.file_id=d.file#;
FILE_ID NAME
---------- ----------------------------------------
9 /u01/app/datafile/data01a.dbf
10 /u01/app/datafile/data01b.dbf
(1)表空間是資料庫中最大的邏輯單位,一個oracle資料庫至少包含一個表空間,就是名為SYSTEM的系統表空間。每個表空間是由一個或多個資料檔案組成的,一個資料檔案只能與一個表空間相關聯,表空間的大小等於構成這個表空間的所有資料檔案的大小之和。
透過DBCA建立的oracle10g/oracle11g資料庫預設包含如下表空間SYSTEM,SYSAUX,TEMP,UNDOTBS1,USERS,EXAMPLE。
SYSTEM是系統表空間,存放系統的最基本的資訊,如果SYSTEM表空間壞掉,oracle將無法啟動。
SYSAUX是從10g中引入的,作為SYSTEM的輔助表空間,用以減少SYSTEM表空間的負荷。以前其他表空間中的一些元件,現在放到SYSAUX表空間中了。
TEMP是臨時表空間,當排序不能在分配的空間中完成時,就會使用磁碟排序的方式,即在oracle例項中的臨時表空間中進行。
UNDOTBS1是撤銷表空間,是UNDO型別的表空間,儲存使用者進行DML操作中,修改前的資料。
USERS是資料庫預設的永久表空間。
EXAMPLE是資料庫測試用例所涉及的表的所屬表空間。
(2)段是構成表空間的邏輯結構,段是由一組區組成的。
按照段所儲存資料的特徵,將段分為若干種型別,主要有資料段,索引段,回退段和臨時段。
透過dba_segments檢視資料庫中的段:
SYS@orcl 06-SEP-14>col segment_name for a15
SYS@orcl 06-SEP-14>col tablespace_name for a15
SYS@orcl 06-SEP-14>set pause on
SYS@orcl 06-SEP-14>select segment_name,segment_type,tablespace_name
2 from dba_segments;
SEGMENT_NAME SEGMENT_TYPE TABLESPACE_NAME
--------------- ------------------ ---------------
CON$ TABLE SYSTEM
UNDO$ TABLE SYSTEM
PROXY_ROLE_DATA TABLE SYSTEM
$
FILE$ TABLE SYSTEM
PROXY_DATA$ TABLE SYSTEM
BOOTSTRAP$ TABLE SYSTEM
OBJ$ TABLE SYSTEM
OBJERROR$ TABLE SYSTEM
OBJAUTH$ TABLE SYSTEM
(3)區是oracle資料庫分配資料的單位,區為段分配空間,它由連續的資料塊組成。
當段中的所有空間已完全使用時,系統自動為該段分配一個新區,區不能跨越資料檔案存在,只能存在一個資料檔案中。
可以透過dba_extents來檢視:
SYS@orcl 06-SEP-14>select segment_name,tablespace_name,blocks from dba_extents;
SEGMENT_NAME TABLESPACE_NAME BLOCKS
--------------- --------------- ----------
SYSTEM SYSTEM 8
SYSTEM SYSTEM 8
SYSTEM SYSTEM 8
SYSTEM SYSTEM 8
SYSTEM SYSTEM 8
SYSTEM SYSTEM 8
SYS_LOB00000523 SYSTEM 8
23C00005$$
SYS_LOB00000135 SYSTEM 8
07C00003$$
(4)資料塊是oracle伺服器所能讀取或寫入的最小儲存單位。
oracle以資料塊為單位管理資料檔案的儲存空間,oracle的資料塊由操作體統的資料塊組成。
檢視當前資料庫中的資料塊大小:
SYS@orcl 06-SEP-14>show parameter db_block_size
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_block_size integer 8192
下面我們講講建立表空間的命令:
當我們建立表空間的時候,需要指定datafile來指明這個表空間所對應的資料檔案,如下:
create tablespace data01 datafile
'/u01/app/datafile/data01a.dbf' size 10m,
'/u01/app/datafile/data01b.dbf' size 10m;
資料檔案預設最多包含4194304個資料塊(2的22次方),資料塊預設為8192(8k),那麼資料檔案最大即為4194304*8k=32GB。
那麼如果我們需要建立一個大小大於32GB的表空間該怎麼辦呢?
這裡存在一個特殊語法,我們可以使用create bigfile tablespace命令來建立,但是需要注意的是,指定bigfile的表空間只能包含一個資料檔案,否則將會出現如下錯誤:
SYS@orcl 06-SEP-14>create bigfile tablespace data01
2 datafile '/u01/app/datafile/data01a.dbf' size 33g,
3 '/u01/app/datafile/data01b.dbf' size 33g;
create bigfile tablespace data01
*
ERROR at line 1:
ORA-32774: more than one file was specified for bigfile tablespace DATA
正確寫法如下:
SYS@orcl 06-SEP-14>create bigfile tablespace data01
2 datafile '/u01/app/datafile/data01.dbf' size 33g;
Tablespace created.
檢視錶空間中有哪些是屬於bigfile的:
SYS@orcl 06-SEP-14>select tablespace_name,bigfile from dba_tablespaces;
TABLESPACE_NAME BIG
-------------------- ---
SYSTEM NO
SYSAUX NO
UNDOTBS1 NO
TEMP NO
USERS NO
EXAMPLE NO
TEST NO
HH NO
GOODS NO
DATA01 YES
10 rows selected.
預設的表空間為smallfile型別,bigfile的表空間只能包含一個資料檔案,該資料檔案可以
包含4294967296(2的32次方)個資料塊。
下面說說建立表空間的詳細語句:
create tablespace xxx 表空間名稱
datafile '/xxx/../xxx.dbf' 資料檔案路徑和名稱
size xxxm 資料檔案初始大小
autoextend on 資料檔案是否自動增長
next 10m 資料檔案每次自動增長大小
maxsize 2048m 資料檔案最大檔案大小
可以指定unlimited(小檔案型別資料檔案8k塊大小為32GB)
extent management local 表空間區分配採用本地表空間管理
uniform size 128k 設定區分配的大小統一為128k
如果不指定大小,則為1M,也可以設定為autoallocate,則設定extent大小由
系統自動分配
segment space management auto 設定段中BLOCK的空間管理為auto
檢視資料檔案自動擴充套件特性和最大擴充套件大小:
SYS@orcl 06-SEP-14>col file_name for a40
SYS@orcl 06-SEP-14>select file_name,autoextensible,maxbytes/1024/1024/1024
2 from dba_data_files;
FILE_NAME AUT MAXBYTES/1024/1024/1024
---------------------------------------- --- -----------------------
/datafile/users01.dbf YES 31.9999847
/datafile/undotbs01.dbf YES 31.9999847
/datafile/sysaux01.dbf YES 31.9999847
/datafile/system01.dbf YES 31.9999847
/datafile/example01.dbf YES 31.9999847
/u01/app/datafile/test01.dbf YES 31.9999847
/datafile/hh01.dbf YES 31.9999847
/u01/app/datafile/goods01.dbf YES 31.9999847
8 rows selected.
下面講講表空間的管理方式:
表空間的管理方式有兩種:
區的管理(extent),區的管理主要用於表空間上區的分配和回收,區的管理分為兩種方式:
a)資料字典空間管理dictionary managed tablespace
透過管理兩個主要的資料字典表:UET$(Used EXtents)和FET$(Free EXtents)來實現區的分配和管理,在oracle9i以後已淘汰。
缺點:併發訪問爭用(大量訪問UET$,FET$),產生大量的redo undo,空間碎片多。
b)本地表空間管理local managed tablespace
在每個資料檔案頭部加入點陣圖區域,透過點陣圖的值(0或1)來實現區的分配和管理。
extent management local(9i以後預設方式)
具體空間分配方式:
1.autoallocate allocation_type=system
2.uniform allocation_type=uniform
建立表空間不指定區管理方式,預設為本地管理,空間分配選擇system。
可以用以下命令檢視錶空間的區管理方式以及空間分配方式:
SYS@orcl 06-SEP-14>col tablespace_name for a20
SYS@orcl 06-SEP-14>select tablespace_name,extent_management,allocation_type
2 from dba_tablespaces;
TABLESPACE_NAME EXTENT_MAN ALLOCATIO
-------------------- ---------- ---------
SYSTEM LOCAL SYSTEM
SYSAUX LOCAL SYSTEM
UNDOTBS1 LOCAL SYSTEM
TEMP LOCAL UNIFORM
USERS LOCAL SYSTEM
EXAMPLE LOCAL SYSTEM
TEST LOCAL SYSTEM
HH LOCAL SYSTEM
GOODS LOCAL SYSTEM
9 rows selected.
下面講講段的管理sgement,段的管理主要用於段中國資料塊的分配和回收,段中塊的管理方式有兩種:
MSSM(Manual Segment Space Management) 不推薦使用
ASSM(Auto System Space Management) 預設值
MSSM透過在段的段頭部分分配自由列表freelist來管理block
透過兩個引數pctfree pctused來管理block如何進出freelist
pctfree值表示預留多少block空間用於更新(百分比)
pctused值表示低於這個值(百分比),block會重新加入到freelist上,可以允許插入資料插入操作。
ASSM透過在每個段的段頭部分分配點陣圖bitmap來管理block,透過點陣圖中的值來判斷資料塊是否可用,
不需要freelist,不需要pctused。
ASSM能有效提高段的管理效率。
可用如下命令檢視段空間的管理方式:
SYS@orcl 06-SEP-14>select tablespace_name,segment_space_management
2 from dba_tablespaces;
TABLESPACE_NAME SEGMEN
-------------------- ------
SYSTEM MANUAL
SYSAUX AUTO
UNDOTBS1 MANUAL
TEMP MANUAL
USERS AUTO
EXAMPLE AUTO
TEST AUTO
HH AUTO
GOODS AUTO
9 rows selected.
當我們刪除表空間的時候可以使用including contents and datafiles來同時刪除表空間上的表和資料檔案。
drop tablespace data01 including contents and datafiles;
可以為表空間增加資料檔案:
SYS@orcl 06-SEP-14>alter tablespace data01
2 add datafile '/u01/app/datafile/data01b.dbf' size 10m;
Tablespace altered.
檢視資料檔案的編號和檔名稱:
SYS@orcl 06-SEP-14>select file#,name from v$datafile;
FILE# NAME
---------- ----------------------------------------
1 /datafile/system01.dbf
2 /datafile/sysaux01.dbf
3 /datafile/undotbs01.dbf
4 /datafile/users01.dbf
5 /datafile/example01.dbf
6 /u01/app/datafile/test01.dbf
7 /datafile/hh01.dbf
8 /u01/app/datafile/goods01.dbf
9 /u01/app/datafile/data01a.dbf
10 /u01/app/datafile/data01b.dbf
10 rows selected.
修改資料檔案的大小,可以指定資料檔案的名稱,也可以指定資料檔案的編號
可以擴大檔案,也可以縮小檔案
擴大檔案不能超過單一檔案大小限制,縮小檔案不能小於當前使用空間。
SYS@orcl 06-SEP-14>alter database
2 datafile '/u01/app/datafile/data01b.dbf' resize 20m;
Database altered.
SYS@orcl 06-SEP-14>alter database datafile 10 resize 20m;
Database altered.
SYS@orcl 06-SEP-14>select file_id,file_name,bytes/1024/1024||'MB'
2 from dba_data_files;
FILE_ID FILE_NAME BYTES/1024/1024||'MB'
---------- ---------------------------------------- ------------------------------------------
4 /datafile/users01.dbf 5MB
3 /datafile/undotbs01.dbf 60MB
2 /datafile/sysaux01.dbf 540MB
1 /datafile/system01.dbf 690MB
5 /datafile/example01.dbf 100MB
6 /u01/app/datafile/test01.dbf 100MB
7 /datafile/hh01.dbf 10MB
8 /u01/app/datafile/goods01.dbf 50MB
9 /u01/app/datafile/data01a.dbf 10MB
10 /u01/app/datafile/data01b.dbf 20MB
10 rows selected.
現在我們建立了一個使用者data01,其表空間是data01,以data01登入,建立一張表tab1:
DATA01@orcl 06-SEP-14>create table tab1(id int) tablespace data01;
Table created.
然後我們為這張表分配區:
DATA01@orcl 06-SEP-14>alter table tab1 allocate extent
2 (size 1m datafile '/u01/app/datafile/data01a.dbf');
Table altered.
DATA01@orcl 06-SEP-14>alter table tab1 allocate extent
2 (size 1m datafile '/u01/app/datafile/data01b.dbf');
Table altered.
可以用如下命令檢視錶tab1的區具體分配在哪些資料檔案上:
SYS@orcl 06-SEP-14>select distinct file_id,name from dba_extents e,v$datafile d
2 where e.owner='DATA01' and e.segment_name='TAB1'
3 and e.file_id=d.file#;
FILE_ID NAME
---------- ----------------------------------------
9 /u01/app/datafile/data01a.dbf
10 /u01/app/datafile/data01b.dbf
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29800581/viewspace-1266241/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle 邏輯結構Oracle
- [zt] Oracle的邏輯結構Oracle
- Oracle OCP(41):邏輯結構Oracle
- Oracle 邏輯結構簡介Oracle
- 3:Oracle體系結構(邏輯結構)Oracle
- oracle邏輯儲存結構理解Oracle
- PostgreSQL:邏輯結構SQL
- 一張圖看懂Oracle邏輯結構和物理結構的關係Oracle
- shared pool的物理結構和邏輯結構
- HBase學習之Hbase的邏輯結構和物理結構
- 檔案的邏輯結構、檔案目錄
- 物理結構和邏輯結構更通俗解釋
- Oracle的邏輯結構(表空間、段、區間、塊)——Oracle資料塊(二)Oracle
- Oracle的邏輯結構(表空間、段、區間、塊)——表空間Oracle
- 資料結構知識點--儲存結構與邏輯結構資料結構
- 事務日誌邏輯體系結構
- IC卡檔案系統的邏輯結構【轉】
- SQL Server中TempDB管理(version store的邏輯結構)SQLServer
- Oracle主備架構下的邏輯備份考慮Oracle架構
- 成為MySQL DBA後,再看ORACLE資料庫(六、邏輯儲存結構)MySqlOracle資料庫
- Vue原始碼探究-資料繫結邏輯架構Vue原始碼架構
- 邏輯表空間管理結構(Logical Storage Structures)Struct
- 邏輯架構和物理架構架構
- oracle 物理讀 邏輯讀的理解Oracle
- 深入瞭解ORACLE的邏輯讀Oracle
- oracle 物理讀,邏輯讀的理解Oracle
- oracle邏輯讀過程Oracle
- Oracle邏輯讀詳解Oracle
- 如何搭建文章結構——常見技術文章的邏輯框架框架
- 資料庫邏輯結構:表空間、段、區、塊的字典資料庫
- Go快速入門 03 | 控制結構:if、for、switch 邏輯語句Go
- 線上支付邏輯漏洞總結
- 工作284:理解繫結邏輯
- 邏輯迴歸原理小結邏輯迴歸
- 什麼是oracle 邏輯讀?Oracle
- Oracle 邏輯備份 expdp/impdpOracle
- Oracle 11.1 邏輯壞塊Oracle
- Oracle邏輯備份指令碼Oracle指令碼