首页 > 数据库 >数据库对象大小统计脚本

数据库对象大小统计脚本

时间:2024-03-29 18:47:34浏览次数:15  
标签:脚本 对象 nspname 数据库 when sys catalog table size

获取数据库排名前20的表

select t.table_catalog as db, 
       n.nspname as schemaname, 
       c.relname, 
       c.reltuples::numeric as rowcount, 
       sys_size_pretty(sys_table_size ( '"' || nspname || '"."' || relname || '"' )) as table_size, 
       sys_size_pretty(sys_indexes_size ( '"' || nspname || '"."' || relname || '"' )) as indexes_size, 
       sys_size_pretty (sys_total_relation_size ( '"' || nspname || '"."' || relname || '"' )) as total_size 
       from sys_class c left join sys_namespace n on ( n.oid = c.relnamespace ) 
       left join information_schema.tables t on (n.nspname= t.table_schema and c.relname=t."table_name" ) 
       where nspname not in ( 'sys_catalog', 'information_schema' ) and relkind in ('r','p') order by reltuples desc limit 20;

统计数据库对象类型和数量

select * from (
select 
    nsp.nspname as schemaname, 
    case c.relkind 
        when 'r' then 'table' 
        when 'm' then 'materialized_view' 
        when 'i' then 'index' 
        when 'S' then 'sequence' 
        when 'v' then 'view' 
        when 'c' then 'composite type' 
        when 't' then 'toast' 
        when 'f' then 'foreign table' 
        when 'p' then 'partitioned_table' 
        when 'I' then 'partitioned_index' 
        else c.relkind::text 
    end as objecttype, 
    count(*) total 
from sys_class c 
join sys_namespace nsp 
 on nsp.oid = c.relnamespace 
where nsp.nspname not in ('information_schema', 'sys_catalog') 
  and nsp.nspname not like 'sys_toast%' 
group by nsp.nspname,c.relkind
union all
select n.nspname as schemaname, 
 case p.prokind 
  when 'a' then 'agg' 
  when 'w' then 'window' 
  when 'p' then 'proc' 
  else 'func' 
 end as "type", 
 count(*) total 
from sys_catalog.sys_proc p 
left join sys_catalog.sys_namespace n on n.oid = p.pronamespace 
where sys_catalog.sys_function_is_visible(p.oid) 
and n.nspname not in ('information_schema', 'sys_catalog') 
group by n.nspname ,p.prokind) order by schemaname;

标签:脚本,对象,nspname,数据库,when,sys,catalog,table,size
From: https://www.cnblogs.com/kingbase/p/17930976.html

相关文章

  • Android数据库升级,阿里程序员的Android之路
    publicsynchronizedstaticDBHelpergetInstance(Contextcontext){if(instance==null){instance=newDBHelper(context);}returninstance;}@OverridepublicvoidonCreate(SQLiteDatabasedb){db.execSQL(SQL.CREATE_TABLE_FAVORITE);//若不是第一个......
  • Python数据库编程全指南SQLite和MySQL实践
    1.安装必要的库首先,我们需要安装Python的数据库驱动程序,以便与SQLite和MySQL进行交互。对于SQLite,Python自带了支持;而对于MySQL,我们需要安装额外的库,如mysql-connector-python。#安装MySQL连接器pipinstallmysql-connector-python2.连接SQLite数据库SQLite是一......
  • JavaScript new一个对象的详细过程
    JavaScriptnew一个对象的详细过程new实现过程new实现原理new手写实现实现过程/原理开辟一块内存,创建一个空对象执行构造函数对这个空对象进行构造给空对象添加__proto__属性调用函数改变this指向最后返回this指向的新对象(如果是引用类型则返回引用类型......
  • 【亚马逊云科技】使用 Vscode Amazon-Q 完成 GUI 界面粉笔脚本开发
    前言亚马逊云科技-Q,可以快速获得紧迫问题的相关答案,解决问题,生成内容。当与Q聊天时,它会提供即时的相关信息和建议,以帮助简化任务、加快决策速度,并帮助激发工作中的创造力和创新。本次我们通过完整的项目开发全方面体验一下Q的实用性,体验在代码开发中是否真正做到解放生产力......
  • mysql数据库cpu高导致微服务假死问题排查解决
    今天早上发现如下task微服务假死了没有响应,然后发现如下日志 2024-03-2901:06:17.089[Thread-152587]ERRORcom.alibaba.druid.pool.DruidPooledStatement.errorCheck[370]:CommunicationsException,druidversion1.2.11,jdbcUrl:jdbc:mysql://15.99.72.154:3306/no......
  • Navicat连接本地CentOs7虚拟机中的Mysql数据库
    1、准备工作:虚拟机中安装Mysql不会的可以参考:https://blog.csdn.net/m0_66360096/article/details/1340535172、Navicat新建连接虚拟机IP地址是和Xshell连接一样的:https://www.cnblogs.com/Bernard94/p/18097141账号密码是安装Mysql时默认的,当然也可以自己修改,可以参考上面安......
  • 头歌-数据库 --SQLServer第一章 - 初识SQLServer
    第1关:创建数据库任务描述本关任务:创建你的第一个SQLServer数据库。相关知识数据库其实就是可以存放大量数据的仓库,学习数据库我们就从创建一个数据库开始吧。为了完成本关任务,你需要掌握:1.如何在Linux系统中连接SQLServer数据库,2.如何创建数据库。连接数据库和创......
  • Java中的多态性:面向对象世界的关键特性
    引言:多态性是面向对象编程(OOP)的核心概念之一,它允许方法在不同对象中具有不同的表现形式。在Java中,多态性不仅提高了代码的灵活性和可扩展性,还使得程序设计更加简洁和优雅。本文将详细探讨Java中多态性的工作原理、实现方式以及它的应用场景。多态性的定义:多态性指的是同......
  • 启用Flashback Database闪回数据库功能
     若想顺利的使用闪回数据库功能,需要先将数据库置于闪回数据库状态。此文记录开启闪回数据库功能的步骤,注意调整过程需要重启数据库并确保数据库处于归档模式。1.确认数据库是否开启FlashbackDatabase功能若未开启,则继续,若已经开启,请从此小文儿飘过~~SYS@ora11g>selectflashbac......
  • 摄影跟拍预定系统的设计与实现|Springboot+ Mysql+Java+ B/S结构(可运行源码+数据库+
    本项目包含可运行源码+数据库+LW,文末可获取本项目的所有资料。项目研究的背景困扰管理层的许多问题当中,摄影跟拍预定管理一定是不敢忽视的一块。但是管理好摄影跟拍预定又面临很多麻烦需要解决,例如有几个方面:第一,往往用户人数都比较多,如何保证能够管理到每一用户;第二,......