查找oracle数据文件,表空间的位置

   执行:Select * FROM DBA_DATA_FILES;查询表空间中数据文件具体位置和文件名,表空间名等

oracle:表空间使用率,表空间扩容_sql脚本

 

 

SELECT a.tablespace_name "表空间名", 
total "表空间大小", 
free "表空间剩余大小", 
(total - free) "表空间使用大小", 
total / (1024 * 1024 * 1024) "表空间大小(G)", 
free / (1024 * 1024 * 1024) "表空间剩余大小(G)", 
(total - free) / (1024 * 1024 * 1024) "表空间使用大小(G)", 
round((total - free) / total, 4) * 100 "使用率 %" 
FROM (SELECT tablespace_name, SUM(bytes) free 
FROM dba_free_space 
GROUP BY tablespace_name) a, 
(SELECT tablespace_name, SUM(bytes) total 
FROM dba_data_files 
GROUP BY tablespace_name) b 
WHERE a.tablespace_name = b.tablespace_name ;

 

表空间扩容

  方式1:手工改变已存在数据文件的大小

    ALTER TABLESPACE YSSUCO ADD DATAFILE 'E:\oracledata\YSSUCO.DBF' SIZE 20480M;

  方式2:允许已存在的数据文件自动增长

ALTER DATABASE DATAFILE 'E:\oracledata\YSSUCO.DBF'AUTOEXTEND ON NEXT 100M MAXSIZE 20480M; 

方式3:增加数据文件

 其中设置的每个文件初始分配空间为7g, autoextend on为自动增长大小,oracle单个文件大小最大不超过32g.

 sql脚本如下:(我这里增加两个数据文件,需要扩容的表空间是YSSUCO)

ALTER TABLESPACE YSSUCO ADD DATAFILE 'F:\oracledata\YSSUCO3.DBF' size 7167M autoextend on ;

ALTER TABLESPACE YSSUCO ADD DATAFILE 'F:\oracledata\YSSUCO4.DBF' size 7167M autoextend on ;