oracle查看表空间大小和使用情况
时间: 2023-09-12 18:09:39 浏览: 58
你可以使用以下 SQL 查询来查看 Oracle 数据库中表空间的大小和使用情况:
```sql
SELECT tablespace_name,
round(SUM(bytes) / 1024 / 1024, 2) AS "Total Size (MB)",
round(SUM(bytes - free_space) / 1024 / 1024, 2) AS "Used Size (MB)",
round(SUM(free_space) / 1024 / 1024, 2) AS "Free Space (MB)",
round((SUM(bytes - free_space) / SUM(bytes)) * 100, 2) AS "Used %"
FROM dba_temp_files
GROUP BY tablespace_name;
```
这个查询将返回每个表空间的名称、总大小(以兆字节为单位)、已使用大小(以兆字节为单位)、可用空间(以兆字节为单位)和已使用百分比。注意,这个查询仅适用于临时表空间。
如果你想查看永久表空间的大小和使用情况,你可以使用以下查询:
```sql
SELECT tablespace_name,
round(SUM(bytes) / 1024 / 1024, 2) AS "Total Size (MB)",
round(SUM(bytes - blocks*block_size) / 1024 / 1024, 2) AS "Used Size (MB)",
round(SUM(blocks*block_size) / 1024 / 1024, 2) AS "Free Space (MB)",
round((SUM(bytes - blocks*block_size) / SUM(bytes)) * 100, 2) AS "Used %"
FROM dba_data_files
GROUP BY tablespace_name;
```
这个查询将返回每个永久表空间的名称、总大小(以兆字节为单位)、已使用大小(以兆字节为单位)、可用空间(以兆字节为单位)和已使用百分比。
希望能对你有所帮助!