1如何判断数据库表空间使用情况_数据库使用查询表
1如何判断数据库表空间使用情况由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“数据库使用查询表”。
如何判断数据库表空间使用情况
经常会有一些同事反映数据库表空间不足,使用率达到90%以上,我远程后发现,其实表空间还有很大的可扩展空间,之所有查出使用率95%以上,是与数据文件的扩展属性与查询语句有关,本文档介绍如何查看表空间最大可扩展空间。
1,数据文件与表空间介绍
表空间是一个逻辑概念,数据文件是物理概念,数据文件是实实在在存在于磁盘上的文件。一个表空间可以1022个数据文件,公司项目中的一个数据文件如果开启了自动扩展属性,那最大可以扩展到32G。
2,查看数据文件信息
公司的绝大部分RAC环境是使用ASM方式管理数据文件的,可以通过数据文件名称直观的辨别数据文件是的存储方式,一般ASM磁盘名都是以加号“+”开头,例如“+DATA”、“+FRA”之类。如果是单机环境,那数据文件会存放在本地文件系统上,例如D盘或E盘的某个目录下,使用select * from dba_data_files;命令查看当前数据库的数据文件信息,如下图:
建议按tablespace_name排序,图中DLMIS表空间有12个数据文件,而且12个数据文件都开启的自动扩展属性(AUTOEXTENSIBLE=YES),都存储在+DATA磁盘组上,最大可扩展到12*32G=384G。目前DLMIS表空间有4个文件扩展到了32G(图中红框标示)。另外8个数据文件还有很大的可扩展空间,目测估计还有约130G左右的可扩展空间,所以DLMIS表空间当前是足够的。其他表空间也是这样查看。
3,增加数据文件
如果某个表空间的所有数据文件都快扩展到了32G,那就需要手动增加数据文件,以DLMIS表空间为例,向DLMIS表空间增加一个数据文件: alter tablespace dlmis add datafile '+DATA' size 2000m autoextend on;命令意思是向dlmis表空间增加一个数据文件,存储在+DATA的ASM磁盘组上(ASM有自动管理的功能,它会根据表空间名与数据库名自动为数据文件生成一个唯一的名字,不需要手动写全),初始大小为2000m,开启自动扩展功能。如下图:
该图是另一个项目中截取的,最后两个数据文件是新加了,同一条命令执行了两次,只写'+DATA',ASM为两个数据文件自动唯一命名了。
4,存储的空间
任何服务器磁盘或共享存储阵列都有最大空间限制,不可能永无止境的扩展,单机环境服务器本地磁盘大小很空间查看,RAC环境可能通过select name,total_mb,free_mb from v$asm_diskgroup;命令查看数据库使用的ASM磁盘组总大小与空闲大小
图中两个磁盘组都还在约500G的可用空间,足够扩容。