Oracle如何扩展表空间
一:
--查看表空间的名字及文件所在位置
select tablespace_name, file_id, file_name, round(bytes / (1024 * 1024), 0) total_space from sys.dba_data_files order by tablespace_name
--查询表空间信息
select username,default_tablespace,t.* from dba_users t
二:
--查询当前表空间下使用情况
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;
从查询结果看出,sgshare这个表空间已经满了,存不下任何东西,这样我们需要进行扩展表空间;
三:
--根据要求,我们需要将这个sgshare的表空间扩展到4G
alter database datafile '表空间位置' resize 新的尺寸
alter database datafile 'D:\APP\ADMINISTRATOR\ORADATA\XYSHARE\SGSHARE.DBF' resize 4096m
当然还有其余别的方法增加表空间大小。暂时 只接触这一种,以后会补上。
四:
--增加后在查询表空间的大小,看看sgshare是不是增加了表空间大小。
sgshare已经增加到了4G的大小。可以正常传输数据。