Oracle 查看表空间的大小及使用情况sql语句

Oracle 查看表空间的大小及使用情况sql语句
最新回答
菊部地区有血

2021-09-16 17:37:08

为查看Oracle表空间的大小及使用情况,可执行以下SQL语句:

1. 查询表空间名称和大小:

SELECT t.tablespace_name, round(SUM(bytes / (1024 * 1024)), 0) ts_size

FROM dba_tablespaces t, dba_data_files d

WHERE t.tablespace_name = d.tablespace_name

GROUP BY t.tablespace_name;

2. 查看物理文件的名称和大小:

SELECT tablespace_name,

file_id,

file_name,

round(bytes / (1024 * 1024), 0) total_space

FROM dba_data_files

ORDER BY tablespace_name;

3. 查看回滚段名称、状态、初始扩展、下一个扩展、最大扩展和当前扩展:

SELECT segment_name,

tablespace_name,

r.status,

(initial_extent / 1024) initialextent,

(next_extent / 1024) nextextent,

max_extents,

v.curext curextent

FROM dba_rollback_segs r, v$rollstat v

WHERE r.segment_id = v.usn(+)

ORDER BY segment_name;

4. 查看控制文件的名称:

SELECT NAME FROM v$controlfile;

5. 查看日志文件的成员:

SELECT MEMBER FROM v$logfile;

6. 计算表空间的使用情况:

SELECT SUM(bytes) / (1024 * 1024) AS free_space, tablespace_name

FROM dba_free_space

GROUP BY tablespace_name;

7. 查看数据库库对象,包括所有者、对象类型和状态:

SELECT owner, object_type, status, COUNT(*) count#

FROM all_objects

GROUP BY owner, object_type, status;

8. 查看数据库版本:

SELECT version

FROM product_component_version

WHERE substr(product, 1, 6) = 'Oracle';

9. 查看数据库的创建日期和归档方式:

SELECT created, log_mode, log_mode FROM v$database;

以上SQL语句提供了对Oracle表空间大小、物理文件、回滚段、控制文件、日志文件、表空间使用情况、数据库库对象、版本和创建日期的全面查询,有助于数据库管理与维护。