MYSQL|ORACLE表空间查询SQL

对于工作中,多数环境可以对数据库进行增改,但是个别环境增改存在插入异常,可以考虑表空间是否使用率达到了100%

查看数据库所有表空间

sql 复制代码
select tablespace_name, sum(bytes)/1024/1024 from dba_data_files group by tablespace_name;

查看具体表单所占空间

sql 复制代码
Select Segment_Name,Sum(bytes)/1024/1024 From User_Extents Group By Segment_Name

查看所有表空间占用率

sql 复制代码
SELECT --B.file_name "文件名",
       A.TABLESPACE_NAME "表空间名",
       TOTAL "表空间大小",
       FREE "表空间剩余大小",
       (TOTAL - FREE) "表空间使用大小",
       TOTAL / (1024 * 1024 * 1024) "表空间大小(G)",
       FREE / (1024 * 1024 * 1024) "表空间剩余大小(G)",
       (TOTAL - FREE) / (1024 * 1024 * 1024) "表空间使用大小(G)",
       ROUND((TOTAL - FREE) / TOTAL, 4) * 100 "使用率 %"
FROM   (SELECT TABLESPACE_NAME,
               SUM(BYTES) FREE
        FROM   DBA_FREE_SPACE
        GROUP  BY TABLESPACE_NAME) A,
       (SELECT TABLESPACE_NAME,
             --  file_name,
               SUM(BYTES) TOTAL
        FROM   DBA_DATA_FILES
        GROUP  BY TABLESPACE_NAME/*,file_name*/) B
WHERE  A.TABLESPACE_NAME = B.TABLESPACE_NAME;

查看具体dbf表空间占用率

sql 复制代码
select b.file_id  文件ID,
  b.tablespace_name  表空间,
  b.file_name     物理文件名,
  b.bytes       总字节数,
  (b.bytes-sum(nvl(a.bytes,0)))   已使用,
  sum(nvl(a.bytes,0))        剩余,
  sum(nvl(a.bytes,0))/(b.bytes)*100 剩余百分比
  from dba_free_space a,dba_data_files b
  where a.file_id=b.file_id
  group by b.tablespace_name,b.file_name,b.file_id,b.bytes
  order by b.tablespace_name

sqlserver可以不用考虑表空间的问题

相关推荐
电魂泡哥5 小时前
SQL出现filesort 一定慢吗
数据库·sql
muddjsv7 小时前
大中小型企业数据层配置规模分析与选型指南
数据库
Runawayliquor7 小时前
opbase:CANN 所有算子的公共地基
大数据·数据库·人工智能·算法
yangshicong8 小时前
第11章:结构化输出与数据提取 —— 让 AI 直接返回你想要的数据格式
数据库·人工智能·redis·python·langchain·ai编程
chimchim668 小时前
pg dblink使用查询
数据库
Java面试题总结8 小时前
java高频面试题(2026最新)
java·开发语言·jvm·数据库·spring·缓存
绝知此事9 小时前
【算法突围 02】树形结构与数据库索引:树形结构与数据库索引:从 BST 到 B+ 树的演化与 MySQL 优化
数据库·mysql·算法·面试·b+树
吴可可12310 小时前
用Teigha修改并保存CAD文件
数据库·算法·c#
yuzhiboyouye11 小时前
内连接,左连接,右连接怎么区别开来?
数据库
铭毅天下11 小时前
Easysearch 版本进化全图——从 ES 国产替代到 AI Native 搜索数据库
大数据·数据库·人工智能·elasticsearch·搜索引擎