show_space存储过程脚本

2023-11-09

CREATE OR REPLACE PROCEDURE show_space (
   p_segname_1     IN VARCHAR2,
   p_type_1        IN VARCHAR2 DEFAULT 'TABLE',
   p_space         IN VARCHAR2 DEFAULT'MANUAL',
   p_analyzed      IN VARCHAR2 DEFAULT 'N',
   p_partition_1   IN VARCHAR2 DEFAULT NULL,
   p_owner_1       IN VARCHAR2 DEFAULT USER)
   AUTHID CURRENT_USER
AS
   p_segname              VARCHAR2 (100);
   p_type                 VARCHAR2 (30);
   p_owner                VARCHAR2 (30);
   p_partition            VARCHAR2 (50);
   l_unformatted_blocks   NUMBER;
   l_unformatted_bytes    NUMBER;
   l_fs1_blocks           NUMBER;
   l_fs1_bytes            NUMBER;
   l_fs2_blocks           NUMBER;
   l_fs2_bytes            NUMBER;
   l_fs3_blocks           NUMBER;
   l_fs3_bytes            NUMBER;
   l_fs4_blocks           NUMBER;
   l_fs4_bytes            NUMBER;
   l_full_blocks          NUMBER;
   l_full_bytes           NUMBER;
   l_free_blks            NUMBER;
   l_total_blocks         NUMBER;
   l_total_bytes          NUMBER;
   l_unused_blocks        NUMBER;
   l_unused_bytes         NUMBER;
   l_LastUsedExtFileId    NUMBER;
   l_LastUsedExtBlockId   NUMBER;
   l_LAST_USED_BLOCK      NUMBER;
   PROCEDURE p (p_label IN VARCHAR2,p_num IN NUMBER)
   IS
   BEGIN
      DBMS_OUTPUT.put_line (RPAD(p_label, 40, '.') || p_num);
   END;
BEGIN
   p_segname := UPPER (p_segname_1);
   p_owner := UPPER (p_owner_1);
   p_type := p_type_1;
   p_partition := UPPER(p_partition_1);
   IF (p_type_1 = 'i' OR p_type_1 ='I')
   THEN
      p_type := 'INDEX';
   END IF;
   IF (p_type_1 = 't' OR p_type_1 ='T')
   THEN
      p_type := 'TABLE';
   END IF;
   IF (p_type_1 = 'tp' OR p_type_1 ='TP')
   THEN
      p_type := 'TABLE PARTITION';
   END IF;
   IF (p_type_1 = 'ip' OR p_type_1 = 'IP')
   THEN
      p_type := 'INDEX PARTITION';
   END IF;
   IF (p_type_1 = 'c' OR p_type_1 ='C')
   THEN
      p_type := 'CLUSTER';
   END IF;
   DBMS_SPACE.UNUSED_SPACE (
      segment_owner               => p_owner,
      segment_name                => p_segname,
      segment_type                => p_type,
      partition_name              => p_partition,
      total_blocks                => l_total_blocks,
      total_bytes                 => l_total_bytes,
      unused_blocks               => l_unused_blocks,
      unused_bytes                => l_unused_bytes,
      LAST_USED_EXTENT_FILE_ID    => l_LastUsedExtFileId,
      LAST_USED_EXTENT_BLOCK_ID   => l_LastUsedExtBlockId,
      LAST_USED_BLOCK             => l_LAST_USED_BLOCK);
   IF p_space = 'MANUAL' OR (p_space<> 'auto' AND p_space <> 'AUTO')
   THEN
      DBMS_SPACE.FREE_BLOCKS (segment_owner       => p_owner,
                             segment_name        =>p_segname,
                              segment_type        => p_type,
                             partition_name      =>p_partition,
                             freelist_group_id   => 0,
                             free_blks           =>l_free_blks);
      p ('Free Blocks', l_free_blks);
   END IF;
   p ('Total Blocks',l_total_blocks);
   p ('Total Bytes', l_total_bytes);
   p ('Unused Blocks',l_unused_blocks);
   p ('Unused Bytes',l_unused_bytes);
   p ('Last Used Ext FileId',l_LastUsedExtFileId);
   p ('Last Used Ext BlockId', l_LastUsedExtBlockId);
   p ('Last Used Block',l_LAST_USED_BLOCK);
   /*IF the segment is analyzed */
   IF p_analyzed = 'Y'
   THEN
      DBMS_SPACE.SPACE_USAGE(segment_owner        => p_owner,
                             segment_name         => p_segname,
                             segment_type         => p_type,
                             partition_name       =>p_partition,
                              unformatted_blocks   => l_unformatted_blocks,
                             unformatted_bytes    =>l_unformatted_bytes,
                             fs1_blocks           =>l_fs1_blocks,
                             fs1_bytes            =>l_fs1_bytes,
                             fs2_blocks           =>l_fs2_blocks,
                              fs2_bytes            => l_fs2_bytes,
                             fs3_blocks           =>l_fs3_blocks,
                             fs3_bytes            =>l_fs3_bytes,
                             fs4_blocks           =>l_fs4_blocks,
                              fs4_bytes            => l_fs4_bytes,
                             full_blocks          =>l_full_blocks,
                             full_bytes           =>l_full_bytes);
      DBMS_OUTPUT.put_line (RPAD ('', 50, '*'));
      DBMS_OUTPUT.put_line ('Thesegment is analyzed');
      p ('0% -- 25% free spaceblocks', l_fs1_blocks);
      p ('0% -- 25% free spacebytes', l_fs1_bytes);
      p ('25% -- 50% free spaceblocks', l_fs2_blocks);
      p ('25% -- 50% free spacebytes', l_fs2_bytes);
      p ('50% -- 75% free spaceblocks', l_fs3_blocks);
      p ('50% -- 75% free spacebytes', l_fs3_bytes);
      p ('75% -- 100% free spaceblocks', l_fs4_blocks);
      p ('75% -- 100% free spacebytes', l_fs4_bytes);
      p ('Unused Blocks', l_unformatted_blocks);
      p ('Unused Bytes',l_unformatted_bytes);
      p ('Total Blocks',l_full_blocks);
      p ('Total bytes',l_full_bytes);
   END IF;
END;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

show_space存储过程脚本 的相关文章

随机推荐

  • 处理cpu %wa过大,导致服务器不能访问的问题。

    今天发现自己的云服务器网站无法访问 查看之后发现 cpu 内存使用正常 监听端口也是正常的 用top命令发现 wa指CPU等待磁盘写入完成的时间 表示磁盘繁忙 这样一来web服务器自然就无法接收新的用户请求 因为linux处理每个进程都需要
  • 15.利用webpack搭建server本地服务

    1 每次修改了一点点的源代码 都会对原来的代码重新做一次打包 有了最新的一个内容 然后通过liveSever搭建一个本地服务 在我们浏览器里面打开把它运行起来 但是这整个过程经常操作会影响我们的开发效率 我们现在想一旦修改源代码以后 web
  • 谈谈数据仓库架构的发展和分类

    在此不做评述 仅供参考 以下内容均引自于ttnn网站 详细链接如下 http groups google com group ttnn lnk li 1发件人 Jerome 查看个人资料日期 2006年12月10日 星期日 下午4时36分电
  • Typora无法打开提示安装新版本解决办法

    最近使用Typora时 发现打开时提示如下错误 The beta version of typora is expired please download and install a newer version 并且会自动跳转到https
  • k8s-hostpath存储使用

    参考网址 https github com nailgun k8s hostpath provisioner 运行k8s hostpath provisioner 下载github项目 git clone https github com
  • AlexNet网络结构详解(含各层维度大小计算过程)与PyTorch实现

    AlexNet网络结构详解 含各层维度大小计算过程 与PyTorch实现 AlexNet网络架构 1 模型架构 2 AlexNet网络架构的贡献 3 Pytorch代码实现 AlexNet网络架构 1 模型架构 AlexNet网络结构相对简
  • 使用Go实现GoF的23种设计模式(一)

    前言 从1995年GoF提出23种设计模式到现在 25年过去了 设计模式依旧是软件领域的热门话题 在当下 如果你不会一点设计模式 都不好意思说自己是一个合格的程序员 设计模式通常被定义为 设计模式 Design Pattern 是一套被反复
  • python可以实现手机定位吗_用Python实现通讯定位功能——PYBOARD V702评测

    1 boot py 这个脚本文件执行时 开发板启动 它设置了开发板的多个选项参数 2 Main py 在boot py运行后被执行 包含python程序的主要脚本 3 Pybcdc inf Windows驱动文件 用来配置USB端口 4 R
  • Linux网络编程基础知识

    网络编程 本质 使用操作系统的接口函数 使得应用程序具备收发网络数据的能力 核心概念 协议 为进行数据通信而预定义的数据规则 地址 网络通信中的用于标识设备的整数值 端口号 设备为收发数据而指定的数值 用于标识具体链接 可理解为 设备中用于
  • 关于2020HUEL_ACM暑期集训八月集训计划变更

    时间飞逝若白驹过隙 转眼2020疫情期间这个特殊的暑假已经过去一半 因为一些原因我们第二个月不与hky一起训练了 正常周赛 咱们的集训计划也会发生相应的改变 具体如下 时间安排 八月共四个周 第一周 继续学习最小生成树 2天 和最短路 4天
  • 屏幕适配方案

    屏幕dp px换算公式 其中width height为我们的手机屏幕宽高 即1920 1080 inch为对角尺寸 常见5 5寸 5 0寸等 public void getAndroiodScreenProperty WindowManag
  • 机器学习集成模型学习——投票集成Voting(二)

    Voting集成 投票机制就是多个模型分别预测 然后投票 票数最高的就是整个模型最后的效果 案例代码 from sklearn linear model import LogisticRegression from sklearn naiv
  • github访问很慢的问题

    github访问很慢的问题 公司一直用着svn 之前也的确用过github的版本管理 但是一直都是可视化的操作 这几天面试了几名前端 问了一下发现他们在之前的公司里都是用git的 于是今天好好温故了一下怎么用命令行进行一下git操作 首先要
  • R语言合并数据框的行与列

    合并数据框的行与列 大家好 这里是想做生信大恐龙 的生信小白 先赞后看养成习惯 还没关注的小伙伴点点关注不迷路 今天熟悉数据操作中的数据合并 数据合并 合并数据框的行与列 一 rbind 和cbind 函数 二 merge 函数 总结 一
  • 【日常实用】git rebase合并多笔为一笔提交

    前言 在日常开发中 经常会遇到master分支和自己的分支已经渐行渐远 分叉久已 此时并不能用get merge 的方式合并代码了 这个时候想要将多笔提交合并成一笔并解决好冲突提交话 get rebase 就派上了用场了 举例说明 一 新建
  • kibana使用

    数据导出 查询完数据后 数据量很大 我们要对数据进行分析 可以导出来用excel分析 导出很简单 就是先保存后分享就可以了 使用kibana界面导出数据 我们要进行重复行统计的时候 可以使用excel的数据透视表 很强大 excel如何快速
  • EM算法

    尽管最大似然估计 MLE 和EM都可以找到 最佳拟合 参数 但是它们查找模型的方式却大不相同 MLE首先累积所有数据 然后使用该数据构建最可能的模型 EM首先对参数进行猜测 考虑丢失的数据 然后对模型进行调整以适合猜测和观察到的数据 该算法
  • 【IDEA】IDEA git log 点击 没有代码变更

    文章目录 1 概述 1 概述 Git log 下查看分支提交的信息 结果只有提交信息 没有代码变更信息 如下图 这里有坑 不是消失了 是下拉框拉倒最上面了 这里有条线 往下拉就能看到了
  • 使用kubeadm工具升级kubernetes

    一 背景 kubeadm部署的kubernetes集群进行升级 通常先升级控制节点 控制节点升级完成后再升级工作节点 本博文只升级了控制节点 工作节点按照相同的流程进行升级即可 环境说明 主机名 节点 11 0 1 200 k8s客户端操控
  • show_space存储过程脚本

    CREATE OR REPLACE PROCEDURE show space p segname 1 IN VARCHAR2 p type 1 IN VARCHAR2 DEFAULT TABLE p space IN VARCHAR2 DE