Oracle 表空間管理

2021-07-06 06:04:36 字數 3664 閱讀 5508

--建立表空間google_lob 用作大表的lob自動的儲存區

create tablespace "google_lob" datafile

'/opt/oracle/oradata/ggtest/datafile/google_lob1.dbf' size 4g,

'/opt/oracle/oradata/ggtest/datafile/google_lob2.dbf' size 4g,

'/opt/oracle/oradata/ggtest/datafile/google_lob3.dbf' size 4g,

'/opt/oracle/oradata/ggtest/datafile/google_lob4.dbf' size 4g

logging online permanent blocksize 8192

extent management local autoallocate default nocompress segment space management auto

;--表空間增加檔案

alter tablespace google_lob add datafile '/opt/oracle/oradata/ggtest/datafile/google_lob5.dbf' size 4g;

--示例。將表demo_t_1欄位file_content 儲存轉移到 表空間google_lob 中

alter table google.demo_t_1 move lob(file_content) store as (tablespace google_lob);

--建立索引表空間

create tablespace "google_idx" datafile

'/opt/oracle/oradata/ggtest/datafile/google_idx01.dbf' size 4g

logging online permanent blocksize 16k

extent management local autoallocate default nocompress segment space management auto

;--示例。 表demo_t_1主鍵儲存到 表空間google_idx

alter index google.pk_demo_t_1 rebuild tablespace google_idx;

--建立臨時表空間

create temporary tablespace "google_temp" tempfile

'/opt/oracle/oradata/ggtest/datafile/google_temp.dbf'

size 2g

autoextend on next 256m maxsize unlimited

extent management local uniform size 20m

;--示例。將使用者臨時表空間調整為 google_temp

alter user google temporary tablespace google_temp

--刪除表空間

drop tablespace google_lob including contents and datafiles;

drop tablespace google_idx including contents and datafiles;

drop tablespace google_temp including contents and datafiles;

select tablespace_name, file_id, file_name,round(bytes/(1024*1024),0) total_space

from dba_data_files order by tablespace_name;

--查詢表空間使用情況:

select a.tablespace_name,a.bytes/1024/1024 "sum mb",

(a.bytes-b.bytes)/1024/1024 "used mb",b.bytes/1024/1024 "free mb",

round (((a.bytes-b.bytes)/a.bytes)*100,2) "used%" from

(select tablespace_name,sum(bytes) bytes from dba_data_files group by tablespace_name) a,

(select tablespace_name,sum(bytes) bytes,max (bytes) largest from dba_free_space group by tablespace_name)b

where a.tablespace_name=b.tablespace_name (+)

order by ((a.bytes-b.bytes)/a.bytes) desc;

---- 表空間擴充套件方法

----現有表空間路徑65536 65536 1 1

--方法一:增加表空間 增加資料檔案個數

alter tablespace esps_2008 add datafile 'd:\oracle\product\10.2.0\oradata\******.dbf' size 1000m;

--方法二:設定表空間自動擴充套件。

alter database datafile 'd:\oracle\product\10.2.0\oradata\******.dbf' autoextend on next 100m maxsize 10000m;

--方法三:重新設計表空間。

alter database datafile 'd:\oracle\product\10.2.0\oradata\******.dbf' resize 10000m;

alter tablespace esps_2008 rename to esps_20082;

--查詢表空間使用明細

select t.owner,

t.segment_name,

t.segment_type,

partition_name,

t.tablespace_name,

t.bytes / 1024 / 1024 "sum mb"

from dba_segments t

where tablespace_name = 'system'

order by t.bytes desc;

--檢視表空間下lob欄位使用情況

select a.owner,

a.table_name,

a.column_name,

b.segment_name,

b.segment_type,

b.tablespace_name,

b.bytes / 1024 / 1024 "sum mb"

from dba_lobs a

join dba_segments b on a.segment_name = b.segment_name

where b.tablespace_name = 'system'

order by b.bytes desc;

Oracle 表空間管理

一 建立表空間f create tablespace mytablespace datafile 建立乙個名為mytablesapce的表空間 path filename1.dbf size 2048m autoextend off,指明資料檔案在存放地點,並關閉檔案的自動擴充套件功能,如果開啟了這...

oracle 表空間管理

表空間是資料庫的邏輯組成部分,從物理上講資料庫資料存放在資料檔案中 從邏輯上講,資料庫則是存放在表空間中,表空間是由乙個或者多個資料檔案組成。oracle資料庫邏輯結構組成部分 資料庫是由表空間組成,而表空間又是由段構成,段是由區構成,而區是又oracle資料庫的塊組成這樣的一種結構,這樣可以提高資...

ORACLE 表空間管理

1.create tablespaces sql create tablespace tablespace name datafile c oracle oradata file1.dbf size 100m,sql c oracle oradata file2.dbf size 100m mini...