1、 在System用户下执行下面的SQL,查看表空间的名字、文件所在位置、数据文件当前大小、数据文件的最大值:表空间TSP_MEDICU已达到oracle最大表空间32G。

SELECT T.TABLESPACE_NAME,
			 D.FILE_NAME,
			 D.AUTOEXTENSIBLE,
			 D.BYTES,
			 D.MAXBYTES,
			 D.STATUS
	FROM DBA_TABLESPACES T, DBA_DATA_FILES D
 WHERE T.TABLESPACE_NAME = D.TABLESPACE_NAME
 ORDER BY TABLESPACE_NAME, FILE_NAME;

# 2、 在System用户下执行下面的SQL,查看表空间的使用比率

SELECT UPPER(F.TABLESPACE_NAME) "表空间名",
			 D.TOT_GROOTTE_MB "表空间大小(M)",
			 D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空间(M)",
			 TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_MB * 100,
										 2),
							 '990.99') "使用比",
			 F.TOTAL_BYTES "空闲空间(M)",
			 F.MAX_BYTES "最大块(M)"
	FROM (SELECT TABLESPACE_NAME,
							 ROUND(SUM(BYTES) / (1024 * 1024), 2) TOTAL_BYTES,
							 ROUND(MAX(BYTES) / (1024 * 1024), 2) MAX_BYTES
					FROM SYS.DBA_FREE_SPACE
				 GROUP BY TABLESPACE_NAME) F,
			 (SELECT DD.TABLESPACE_NAME,
							 ROUND(SUM(DD.BYTES) / (1024 * 1024), 2) TOT_GROOTTE_MB
					FROM SYS.DBA_DATA_FILES DD
				 GROUP BY DD.TABLESPACE_NAME) D
 WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME
 ORDER BY 4 DESC;

3、 建议进行备份:执行备份批处理文件进行数据库备份,且备份所有文件(数据文件、控制文件和重做日志文件)

4、 新增数据文件个数(此为关键步骤):

ALTER TABLESPACE databasename
ADD DATAFILE 'E:\oracle\product\10.2.0\oradata\DOCARE\databasename01.DBF'
SIZE 500M
AUTOEXTEND 
ON NEXT 20M 
MAXSIZE UNLIMITED;
文章作者: zlinks
本文链接:
版权声明: 本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 ZFS的成长之路
Oracle Oracle基本语法
喜欢就支持一下吧