oracle表空间管理图形界面,Oracle表空间管理和优化
Oracle 表空间管理和优化 1. TOM大神的表查询和授权语句create or replace procedure SHOW_SPACE(P_SEGNAME IN VARCHAR2,
Oracle 表空间管理和优化
1. TOM大神的表查询和授权语句
create or replace procedure SHOW_SPACE(P_SEGNAME IN VARCHAR2,
P_OWNER IN VARCHAR2 DEFAULT USER,
P_TYPE IN VARCHAR2 DEFAULT 'TABLE',
P_PARTITION IN VARCHAR2 DEFAULT NULL)
-- THIS PROCEDURE USES AUTHID CURRENT USER SO IT CAN QUERY DBA_*
-- VIEWS USING PRIVILEGES FROM A ROLE AND SO IT CAN BE INSTALLED
-- ONCE PER DATABASE, INSTEAD OF ONCE PER USER WHO WANTED TO USE IT.
AUTHID CURRENT_USER AS
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;
L_SEGMENT_SPACE_MGMT VARCHAR2(255);
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;
-- INLINE PROCEDURE TO PRINT OUT NUMBERS NICELY FORMATTED
-- WITH A SIMPLE LABEL.
PROCEDURE P(P_LABEL IN VARCHAR2, P_NUM IN NUMBER) IS
BEGIN
DBMS_OUTPUT.PUT_LINE(RPAD(P_LABEL, 40, '.') ||
TO_CHAR(P_NUM, '999,999,999,999'));
END;
BEGIN
-- THIS QUERY IS EXECUTED DYNAMICALLY IN ORDER TO ALLOW THIS PROCEDURE
-- TO BE CREATED BY A USER WHO HAS ACCESS TO DBA_SEGMENTS/TABLESPACES
-- VIA A ROLE AS IS CUSTOMARY.
-- NOTE: AT RUNTIME, THE INVOKER MUST HAVE ACCESS TO THESE TWO
-- VIEWS!
-- THIS QUERY DETERMINES IF THE OBJECT IS AN ASSM OBJECT OR NOT.
BEGIN
EXECUTE IMMEDIATE 'SELECT TS.SEGMENT_SPACE_MANAGEMENT
FROM DBA_SEGMENTS SEG, DBA_TABLESPACES TS
WHERE SEG.SEGMENT_NAME = :P_SEGNAME
AND (:P_PARTITION IS NULL OR
SEG.PARTITION_NAME = :P_PARTITION)
AND SEG.OWNER = :P_OWNER
AND SEG.TABLESPACE_NAME = TS.TABLESPACE_NAME'
INTO L_SEGMENT_SPACE_MGMT
USING P_SEGNAME, P_PARTITION, P_PARTITION, P_OWNER;
EXCEPTION
WHEN TOO_MANY_ROWS THEN
DBMS_OUTPUT.PUT_LINE('THIS MUST BE A PARTITIONED TABLE, USE P_PARTITION => ');
RETURN;
END;
-- IF THE OBJECT IS IN AN ASSM TABLESPACE, WE MUST USE THIS API
-- CALL TO GET SPACE INFORMATION; ELSE WE USE THE FREE_BLOCKS
-- API FOR THE USER MANAGED SEGMENTS.
IF L_SEGMENT_SPACE_MGMT = 'AUTO' THEN
DBMS_SPACE.SPACE_USAGE(P_OWNER,
P_SEGNAME,
P_TYPE,
L_UNFORMATTED_BLOCKS,
L_UNFORMATTED_BYTES,
L_FS1_BLOCKS,
L_FS1_BYTES,
L_FS2_BLOCKS,
L_FS2_BYTES,
L_FS3_BLOCKS,
L_FS3_BYTES,
L_FS4_BLOCKS,
L_FS4_BYTES,
L_FULL_BLOCKS,
L_FULL_BYTES,
P_PARTITION);
P('UNFORMATTED BLOCKS ', L_UNFORMATTED_BLOCKS);
P('FS1 BLOCKS (0-25) ', L_FS1_BLOCKS);
P('FS2 BLOCKS (25-50) ', L_FS2_BLOCKS);
P('FS3 BLOCKS (50-75) ', L_FS3_BLOCKS);
P('FS4 BLOCKS (75-100)', L_FS4_BLOCKS);
P('FULL BLOCKS ', L_FULL_BLOCKS);
ELSE
DBMS_SPACE.FREE_BLOCKS(SEGMENT_OWNER => P_OWNER,
SEGMENT_NAME => P_SEGNAME,
SEGMENT_TYPE => P_TYPE,
FREELIST_GROUP_ID => 0,
FREE_BLKS => L_FREE_BLKS);
P('FREE BLOCKS', L_FREE_BLKS);
END IF;
-- AND THEN THE UNUSED SPACE API CALL TO GET THE REST OF THE
-- INFORMATION.
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);
P('TOTAL BLOCKS', L_TOTAL_BLOCKS);
P('TOTAL BYTES', L_TOTAL_BYTES);
P('TOTAL MBYTES', TRUNC(L_TOTAL_BYTES / 1024 / 1024));
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);
END;
让普通用户能执行SYS.SHOW_SPACE
SYS@zcs11G> drop user zcs1 CASCADE;
create user zcs identified by zcs;
grant connect,resource,dba to zcs;
grant execute on SYS.SHOW_SPACE TO zcs;
connect zcs/zcs
drop table t1 purge;
create table t1 (id int,name varchar2(19)) segment creation IMMEDIATE tablespace users;
set serverout on;
exec sys.show_space('T1'); 本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉 本文系统来源:php中文网
oracle表空间管理图形界面,Oracle表空间管理和优化相关推荐
- linux设置逻辑卷进不了图形界面,LVM逻辑卷管理器图形界面操作
LVM逻辑卷管理器图形界面操作 LVM有关概念 LVM(Logical Volume Manager)即逻辑卷管理器,它最先是在Linux 2.4内核中被集成到内核中去的,它的出现改变了传统的磁盘空间 ...
- C#编程基础——综合项目实践:KTV点歌系统项目第四课:制作后台管理主界面窗体和歌手管理窗体
1.制作后台管理主界面窗体(每完成一个窗体,记得进行功能测试) 制作效果: 第一步:打开上次未完成的KTV_MS项目,打开方法:菜单栏[文件]--[打开]--[项目/解决方案],在自己的电脑上找到上次 ...
- oracle 无法弹出图形界面,Xshell 5 不能弹出GUI 图形界面问题
https://www.cndba.cn/dave/article/1074 https://www.cndba.cn/dave/article/1074 刚从Xshell 4 换成了Xshell5, ...
- 图形界面 I: 图形界面的动画 (第三章)
目录 简介 管理图形界面 移动表单的功能 测试表单在图表上的移动 当界面控件上有鼠标掠过时改变外观 结论 简介 本文是关于图形界面系列文章第一部分的续篇. 第一篇文章图形界面 I: 库结构的准备工作 ...
- ORACLE安装启图形界面与oracle安装介质解压后缺jar包
8月25日-8月27日,三天就安装一套oracle 10.2.0.5 for AIX 6100 HA双机,安装过程中真是问题很多. 首先,是启动OUI图形界面,安装是在机房直连网卡进行的,使用 ...
- linux下oracle数据库升级,Linux下升级Oracle 10
环境:虚拟机 OS: Linux 5 Oracle 升级前版本: 10.2.0.0.1 先关闭数据库和监听 然后杀掉所有的oracle进程 ps -ef |grep oracle |grep -v g ...
- oracle怎么判断是裸设备安装,Oracle 9i下以裸设备方式安装数据库
一直都在Oracle 10G下以裸设备方式手工建库,今天尝试在oracle 9i下同样以裸设备方式手工建库,遇到点麻烦,不过好一番折腾之后,终于还是解决了,详尽记录如下. 一直都在oracle10G下 ...
- PyQt5图形界面GUI开发过程记录
PyQt5图形界面GUI开发过程记录 一.PyQT的简介与安装 1.1 常用的图形界面GUI 1.2 PyQT5的安装 二.PyQt的基本使用 2.1 QApplication 2.2 界面控件 2. ...
- python图形用户界面pyside_Python图形界面开发——PySide2库
Python知识点总结(1) Python知识点总结(2) Python开发案例(学生信息管理系统) Python图形界面开发--PySide2库 目录 1. 简介与安装 2. 基本结构 导入需要的库 ...
最新文章
- 【微信小程序】跳转到另一个微信小程序
- copyonwritearraylist原理_Java集合干货——CopyOnWriteArrayList源码分析
- 【Mysql】Mysql数据表区分大小写问题解决方案
- webpack打包---报错内存溢出javaScript heap out of memory
- 常用类回顾之(String类)
- 暴笑小笑话集----转自通信公社
- 12、play整合Akka
- linux无法关机 grub2,Ubuntu关机卡住无法关机如何解决?
- 转载:vb导出excel的方法
- impdp oracle 只导入表结构_oracle数据库怎么导入dmp,只导入数据不导入表结构?...
- Linux 下安装配置 JDK7
- LeetCode 22. Generate Parentheses
- spss统计分析基础教程(上)--自学
- web地图热力图理解
- 打开计算机系统无法访问指定的,win10系统运行软件时提示“无法访问指定设备路径或文件的修复步骤...
- Crackme#1算法注册机
- linux无法安装at命令,在Ubuntu/Debian/CentOS/Fedora下安装At及各种At命令的用法
- 蓝牙射频的杂散,谐波与FCC测试解密
- 在python中下列代码的运行结果是print abc_下列代码运行结果是?
- STM32蓝牙控制循迹避障小车源代码——4.蓝牙控制
热门文章
- shell脚本 猜数字游戏并计数比较次数
- 前端date format_前端面试-手撕代码篇
- 玩转 SpringBoot 2 之发送邮件篇
- 基于JAVA+SpringMVC+Mybatis+MYSQL的企业计划管理系统
- 变成一列_VBA实践(6)--excel横向排列的数据表变成竖向排列
- 基于Asp.net MVC的系统架构
- java 时间处理经典案例
- Java中Timer的用法
- 《浪潮之巅》完全系类——IT人士必读经典
- [GoogleAppEngine]GAE平台需设置默认threadsafe-编译问题