一、查看表空间使用情况
SELECT a.tablespace_name,
a.bytes total,
b.bytes used,
c.bytes free,
(b.bytes * 100) / a.bytes "% USED ",
(c.bytes * 100) / a.bytes "% FREE "
FROM sys.sm$ts_avail a, sys.sm$ts_used b, sys.sm$ts_free c
WHERE a.tablespace_name = b.tablespace_name
AND a.tablespace_name = c.tablespace_name;
二、创建表空间以及用户
1. 查看表空间的文件位置
select * from dba_data_files
order by tablespace_name, file_name;
2. 创建表空间
create tablespace mst --(表空间名称)
logging
datafile 'E:\ORACELDATA\MST.dbf' --(表空间路径位置)
size 32m --表空间大小
autoextend on -- 设置空间不足时增长
next 32m
extent management local;
3.创建表空间用户
create user mst -- 用户名
identified by 123 --密码
default tablespace mst; --表空间名称
4. 授权表空间相应权限
GRANT CREATE USER,DROP USER,ALTER USER ,CREATE ANY VIEW ,
DROP ANY VIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE,
DBA,CONNECT,RESOURCE,CREATE SESSION TO mst --表空间名称
三、解决表空间快满的操作
1.添加新的表空间文件
alter tablespace users --users为表空间名称,此处注意替换
add datafile '/opt/oracle/oradata/esop/so_data02.dbf' --表空间文件位置
size 200M; -- 新的表空间文件大小 也可以使用G为单位
2.重新设置原有表空间大小
alter database datafile
'/opt/oracle/oradata/esop/so_data01.dbf' --表空间文件
resize 200M ; --最新的表空间大小
总结
- 此次针对Oracle表空间相关操作,包括查看表空间大小,表空间使用情况,创建表空间及其用户,添加或修改表空间大小