查询数据库表空间

select df.tablespace_name,
       round(df.total_space / 1048576, 0) "Total Space(MB)",
       round((df.total_space - nvl(fs.free_space, 0)) / 1048576, 0) "Used Space(MB)",
       round(nvl(fs.free_space, 0) / 1048576, 0) "Free Space(MB)",
       round(100 * (1 - nvl(fs.free_space, 0) / df.total_space), 2) "%Used",
       to_char(Sysdate, ‘yyyy-mm-dd hh24:mi‘) Stat_Time
  from (select tablespace_name, sum(bytes) total_space
          from dba_data_files
         group by tablespace_name) df,
       (select b.tablespace_name, sum(b.bytes) free_space
          from dba_free_space b
         group by b.tablespace_name) fs
 where df.tablespace_name = fs.tablespace_name(+)
   and exists (select *
          from dba_tablespaces ts
         where ts.contents <> ‘TEMPORARY‘
           and ts.tablespace_name = df.tablespace_name)
union
select df.tablespace_name,
       round(df.total_space / 1048576, 0) "Total Space(MB)",
       round(nvl(us.used_space, 0) / 1048576, 0) "Used Space(MB)",
       round((df.total_space - nvl(us.used_space, 0)) / 1048576, 0) "Free Space(MB)",
       round(100 * (nvl(us.used_space, 0) / df.total_space), 2) "%Used",
       to_char(Sysdate, ‘yyyy-mm-dd hh24:mi‘) Stat_Time
  from (select tablespace_name, sum(bytes) total_space
          from dba_temp_files
         group by tablespace_name) df,
       (select b.tablespace_name, sum(b.bytes_cached) used_space
          from v$temp_extent_pool b
         group by b.tablespace_name) us
 where df.tablespace_name = us.tablespace_name(+)
   and exists (select *
          from dba_tablespaces ts
         where ts.contents = ‘TEMPORARY‘
           and ts.tablespace_name = df.tablespace_name)
 order by 5 desc;
!
时间: 2024-10-17 00:25:56

查询数据库表空间的相关文章

oracle 查询数据库表空间大小和剩余空间

dba_data_files:数据库数据文件信息表.可以统计表空间大小(总空间大小). dba_free_space:可以统计剩余表空间大小. 增加表空间即向表空间增加数据文件,表空间大小就是数据文件总大小. 检查Oracle各个表空间的增长情况(各表空间使用率) select A.tablespace_name,(1-(A.total)/B.total)*100 used_percent from (select tablespace_name,sum(bytes) total from db

oracle数据库-表空间基础语法及举例

数据库的存储结构 数据库主要用于存储和检索相关的信息,Oracle数据库包含逻辑结构和物理结构. 物理结构是指现实存储单元,由一组文件组成如数据文件.日志文件.控制文件. 数据文件:用于存储数据的文件.如表,索引和数据等都存储在数据文件中. 日志文件:用于记录对数据库的修改信息. 控制文件:用于存储 Oracle实例信息.数据文件信息和日志文件信息的二进制文件.由于存储了数据文件和日志文件的信息,所以 Oracle启动时必须访问呢控制文件. 逻辑结构式是指数据概念性的组织.包括  表空间.表.行

oracle 所有查询和表空间,以及其关系

select * from dba_users;   查看数据库里面所有用户,前提是你是有dba权限的帐号,如sys,system select * from all_users;     查看你能管理的所有用户 select * from user_users; 查看当前用户信息 查询用户的表空间: select username,default_tablespace from dba_users;  查询数据库所有用户所在表空间 select username,default_tablesp

数据库-表空间、数据库备份(实施)

近来第一次写了实施文档,也有一些收获,及时记录下来,以备后用. 数据库表空间 ORACLE数据库被划分成称作为表空间的逻辑区域--形成ORACLE数据库的逻辑结构. 一个ORACLE数据库能够有一个或多个表空间, 而一个表空间则对应着一个或多个物理的数据库文件. 表空间是ORACLE数据库恢复的最小单位,容纳着许多数据库实体,如表.视图.索引.聚簇.回退段和临时段等. 每个ORACLE数据库均有SYSTEM表空间,这是数据库创建时自动创建的. SYSTEM表空间必须总要保持联机,因为其包含着数据

如何测试数据库表空间不足场景

1.select * from DBA_DATA_FILES; 这个命令主要是了解数据库实例中各个模块数据库表空间的大小,是否支持自动扩展(AUTOEXTENSIBLE),MAX扩展(MAXBYTES),以及各个表空间的路径(\oracle\oradata\i2kdb\omscm.dbf) 查看AUTOEXTENSIBLE字段是否支持自动扩展,如果对应表空间的该字段为YES,表示支持自动扩展 2.alter database datafile '\oracle\oradata\i2kdb\oms

基于Cordys C3版平台应用系统维护经验一则——Oracle数据库表空间满了

某日中午,有用户陆续反映系统问题,说流程送出异常.待办不消失.待办打不开等等.维护工程师开始分析问题,后台较为清晰的现象是流转日志记录插入数据失败,人工测试表插入成功,其它现象五花八门,没有规律,经过多位维护工程师的努力,终于由Oracle数据库管理工程师在16:01排除故障,系统基本恢复"正常". 故障原因是"应用系统Oracle数据库中Cordys用户所对应的表空间"满了,导致应用无法正常向数据库写入数据,造成业务数据不完整. 第二日,维护人员根据用户反馈,逐个

MySQL数据库表空间及索引的查看

本文我们介绍MySQL数据库表空间和索引的查看方法,并详细地给出了其代码,接下来我们一一介绍. 1.查看索引 (1)单位是GB SELECT CONCAT(ROUND(SUM(index_length)/(1024*1024*1024), 2), ' GB') AS 'Total Index Size' +------------------+ | Total Index Size | +------------------+ | 1.70 GB | +------------------+ (

Java 通过JDBC查询数据库表结构(字段名称,类型,长度等)

Java 通过JDBC查询数据库表结构(字段名称,类型,长度等) 发布者:唛唛家的豆子 时间:2012-11-20 17:54:02 在JDBCPreparedStatement.executeQuery().getMetaData();后,我们可以通过ResultSetMetaData对象查询返回结果集的源数据信息,也就是表结构信息. 示例代码如下: package astar.sutil.db; import java.sql.Connection; import java.sql.Driv

如何查看Oracle数据库表空间大小(空闲、已使用),是否要增加表空间的数据文件

要查看Oracle数据库表空间大小,是否需要增加表空间的数据文件,在数据库管理中,磁盘空间不足是DBA都会遇到的问题,问题比较常见. --1.查看表空间已经使用的百分比 Sql代码 select   a.tablespace_name,a.bytes/1024/1024 "Sum MB",(a.bytes-b.bytes)/1024/1024   "used MB",b.bytes/1024/1024 "free MB",round(((a.by