表空間管理

2021-09-01 20:23:57 字數 1364 閱讀 9460

第一步:檢視表空間的名字及檔案所在位置:

select tablespace_name, file_id, file_name,

round(bytes/(1024*1024),0) total_space

from dba_data_files

order by tablespace_name

第二步:增大所需表空間大小:

alter database datafile '表空間位置

'resize 新的尺寸

例如:alter database datafile '\oracle\oradata\anita_2008.dbf' resize 4000m

對於oracle資料庫的表空間,除了用手動增加大小外,還可以增加資料檔案等方式擴充套件表空間大小。

方法一:增加資料檔案個數

alter tablespace 表空間名稱

add datafile '新的資料檔案位址' size 資料檔案大小

例如:alter tablespace esps_2008

add datafile '\oracle\oradata\anita_2010.dbf' size 1000m

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

alter database datafile '資料檔案位置

'autoextend on next 自動擴充套件大小 maxsize 最大擴充套件大小

例如:alter database datafile '\oracle\oradata\anita_2008.dbf'

autoextend on next 100m maxsize 10000m

方法三:查詢表空間使用情況:

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;

本地管理表空間和字典管理表空間

oracle的儲存分為四個層次,block extent segment和tablespace。oracle分配空間到segment時,是將一組連續的block新增到segment,這組連續的block稱作乙個extent。對於已經分配和還未分配的extent的元資料可能存放在資料字典中 字典管理表...

管理表空間 1 刪除表空間

刪除表空間的時候,如果該錶空間非空,則若使用drop tablesapce test1.的命令會報錯 表空間非空,請使用including contents 此時的用法為 drop tablecpace test1 including contents and datafiles 同時刪除表空間以及...

表空間管理,段管理

字典表空間管理 用2個use free 2個表管理所有資料檔案中的所有區 本地表空間管理 每個資料檔案用位圖管理各自檔案內部的區 高併發 手動段管理 mssm 用freelist管理資料塊,但是很難控制freelist的個數,如果freelist太少會引起競爭,而且對資料塊的使用程度處理的不合理 自...