一、查看表空间使用情况

  1. SELECT a.tablespace_name,
  2. a.bytes total,
  3. b.bytes used,
  4. c.bytes free,
  5. (b.bytes * 100) / a.bytes "% USED ",
  6. (c.bytes * 100) / a.bytes "% FREE "
  7. FROM sys.sm$ts_avail a, sys.sm$ts_used b, sys.sm$ts_free c
  8. WHERE a.tablespace_name = b.tablespace_name
  9. AND a.tablespace_name = c.tablespace_name;

二、创建表空间以及用户

1. 查看表空间的文件位置

  1. select * from dba_data_files
  2. order by tablespace_name, file_name;

2. 创建表空间

  1. create tablespace mst --(表空间名称)
  2. logging
  3. datafile 'E:\ORACELDATA\MST.dbf' --(表空间路径位置)
  4. size 32m --表空间大小
  5. autoextend on -- 设置空间不足时增长
  6. next 32m
  7. extent management local;

3.创建表空间用户

  1. create user mst -- 用户名
  2. identified by 123 --密码
  3. default tablespace mst; --表空间名称

4. 授权表空间相应权限

  1. GRANT CREATE USER,DROP USER,ALTER USER ,CREATE ANY VIEW ,
  2. DROP ANY VIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE,
  3. DBA,CONNECT,RESOURCE,CREATE SESSION TO mst --表空间名称

三、解决表空间快满的操作

1.添加新的表空间文件

  1. alter tablespace users --users为表空间名称,此处注意替换
  2. add datafile '/opt/oracle/oradata/esop/so_data02.dbf' --表空间文件位置
  3. size 200M; -- 新的表空间文件大小 也可以使用G为单位

2.重新设置原有表空间大小

  1. alter database datafile
  2. '/opt/oracle/oradata/esop/so_data01.dbf' --表空间文件
  3. resize 200M ; --最新的表空间大小

总结

  1. 此次针对Oracle表空间相关操作,包括查看表空间大小,表空间使用情况,创建表空间及其用户,添加或修改表空间大小