【读书笔记】手动生成段顾问建议

DECLARE

my_task_id   number;

obj_id       number;

my_task_name varchar2(100);

my_task_desc varchar2(500);

BEGIN

my_task_name := ‘Table_Segment_Advice‘;

my_task_desc := ‘Manual Segment Advisor Run‘;

---------

-- Step 1 创建一个任务

---------

dbms_advisor.create_task (

advisor_name => ‘Segment Advisor‘,

task_id      => my_task_id,

task_name    => my_task_name,

task_desc    => my_task_desc);

---------

-- Step 2 为这个任务分配一个对象

---------

dbms_advisor.create_object (

task_name   => my_task_name,

object_type => ‘TABLE‘,

attr1       => ‘user_name‘,

attr2       => ‘table_name‘,

attr3       => NULL,

attr4       => NULL,

attr5       => NULL,

object_id   => obj_id);

---------

-- Step 3 设置任务参数

---------

dbms_advisor.set_task_parameter(

task_name => my_task_name,

parameter => ‘recommend_all‘,

value     => ‘TRUE‘);

---------

-- Step 4 执行这个任务

---------

dbms_advisor.execute_task(my_task_name);

END;

查看段顾问建议:

select b.advisor_name,c.attr1,c.attr2,a.task_name,a.message,a.more_info

from DBA_ADVISOR_FINDINGS a,DBA_ADVISOR_TASKS b,dba_advisor_objects c

where a.task_id=b.task_id

and b.advisor_name=‘Segment Advisor‘

and b.task_name=‘Table_Segment_Advice‘

and a.object_id=c.object_id

and a.task_id=c.task_id

SELECT

‘Segment Advice --------------------------‘|| chr(10) ||

‘TABLESPACE_NAME  : ‘ || tablespace_name   || chr(10) ||

‘SEGMENT_OWNER    : ‘ || segment_owner     || chr(10) ||

‘SEGMENT_NAME     : ‘ || segment_name      || chr(10) ||

‘ALLOCATED_SPACE  : ‘ || allocated_space   || chr(10) ||

‘RECLAIMABLE_SPACE: ‘ || reclaimable_space || chr(10) ||

‘RECOMMENDATIONS  : ‘ || recommendations   || chr(10) ||

‘SOLUTION 1       : ‘ || c1                || chr(10) ||

‘SOLUTION 2       : ‘ || c2                || chr(10) ||

‘SOLUTION 3       : ‘ || c3 Advice

FROM

TABLE(dbms_space.asa_recommendations(‘TRUE‘, ‘FALSE‘, ‘FALSE‘));

时间: 2024-08-24 06:58:50

【读书笔记】手动生成段顾问建议的相关文章

读书笔记,一段时间以来

021<火星公主>作者:[美] 埃德加·赖斯·伯勒斯, [email protected] 我坚信,一个男人和女人的交往正好和他的勇敢成反比.一个懦弱的蠢货经常能轻易地迷住女人,而一位可以毫无惧色地面对成千上万个真正敌人的勇士却只能像受了惊吓的孩子一祥躲在暗处. [email protected], 021<火星公主>作者:[美] 埃德加·赖斯·伯勒斯, loc. 1239-1241 068<星船伞兵>作者:[美] 罗伯特·海因莱因, [email protected]

Oracle手工生成段建议(Segment Advisor)

一.描写叙述 从oracle 10g開始,oracle引入了段顾问(Segment Advisor),用于检查数据库中是否有与存储空间相关的建议,而且从10gR2開始,oracle自己主动调度并执行一个段顾问作业,定时分析数据库中的段,并将分析结果放在内部表中.可是非常多情况下,作为DBA,我们都会将oracle自带的各种调度作业(统计信息收集.段顾问.SQL顾问等等)禁用,进而通过手工进行控制执行类似作业(或者为了节省资源).因此非常多情况下,我们都没实用到段顾问这个非常实用的功能.这篇文章就

151 个建议 读书笔记

151个建议读书笔记 普通 1.  当使用long 类型的数据时,要将值后的l 写为L ,小写的l 容易与数字1 混淆 例子:   long num = 3l;    long num = 3 L ; 2.  务必让常量的值在运行时保持不变: 例子: public static final int CANNOT_CHANGE = new Random.nextInt(); 此时的常量在运行时会变,不能这样写 建议: 常量保存到常量类中 3.  三目运算的后面两个值的类型一定要相同: 例子: in

《编写高质量代码188个建议》读书笔记

第一章  JavaScript语言基础 一.代码的执行速度决定的因素是: 1.代码量少,运行速度不一定快 2.代码量多,速度也不一定慢 建议1:警惕Unicode代码 javascript代码每个字符都两字节,这样函数名和变量名都可以使用中文来命名 1 <script> 2 var 人名 = "张三"; 3 console.log(人名); 4 5 function 技术(开发){ 6 console.log(开发); 7 } 8 9 技术("哈哈");

驱动开发读书笔记. 0.02 基于EASYARM-IMX283 烧写uboot和linux系统

驱动开发读书笔记. 0.02 基于EASYARM-IMX283 怎么烧写自己裁剪的linux内核?(非所有arm9通用) 手上有一块tq2440,但是不知道什么原因,没有办法烧boot进norflash或者nandflash:只好用另一块arm9(i.mx283a)来继续学习: 从开发教程上面可知,烧写uboot和Linux是通过各种批处理脚本和exe程序来执行的,称之为固件烧写,然而并没有需要我们选择uboot路径.Linux内核和文件系统的地方.这样的话是不是意味着只能烧写官方默认提供的文件

【游戏设计模式】之四 《游戏编程模式》读书笔记:全书内容梗概总结

本系列文章由@浅墨_毛星云 出品,转载请注明出处.   文章链接:http://blog.csdn.net/poem_qianmo/article/details/53240330 作者:毛星云(浅墨)    微博:http://weibo.com/u/1723155442 本文的Github版本:QianMo/Reading-Notes/<游戏编程模式>读书笔记 这是一篇超过万字读书笔记,总结了<游戏编程模式>一书中所有章节与内容的知识梗概. 我们知道,游戏行业其实一直很缺一本系

Qt 学习之路 2 --- 读书笔记

一.文章来由 来自豆子老师非常好的一本Qt教程,但是只有网络版,所以用这个做笔记了,不动笔墨不读书嘛~~ 二.读书笔记 1.Qt 学习之路 2(2):Qt 简介 1.1 关于 Qt 的一站式解决 Qt 是一个著名的 C++ 应用程序框架.但并不只是一个 GUI 库,因为 Qt 十分庞大,并不仅仅是 GUI 组件.使用 Qt,在一定程度上你获得的是一个"一站式"的解决方案:不再需要研究 STL,不再需要 C++ 的,不再需要到处去找解析 XML.连接数据库.访问网络的各种第三方库,因为

【转】《windows核心编程》读书笔记

这篇笔记是我在读<Windows核心编程>第5版时做的记录和总结(部分章节是第4版的书),没有摘抄原句,包含了很多我个人的思考和对实现的推断,因此不少条款和Windows实际机制可能有出入,但应该是合理的.开头几章由于我追求简洁,往往是很多单独的字句,后面的内容更为连贯. 海量细节. 第1章    错误处理 1.         GetLastError返回的是最后的错误码,即更早的错误码可能被覆盖. 2.         GetLastError可能用于描述成功的原因(CreatEvent)

Effective Objective-C 读书笔记

一本不错的书,给出了52条建议来优化程序的性能,对初学者有不错的指导作用,但是对高级阶段的程序员可能帮助不是很大.这里贴出部分笔记: 第2条: 使用#improt导入头文件会把头文件的内容全部暴露到目标文件中,而且如果两个类之间存在循环引用则会出现编译错误,所以要尽量使用@class进行类声明. 如果需要实现一个协议,则必须#improt这个协议的头文件,所以可以将协议单独定义在一个.h文件当中.如果这个协议是代理模式协议的一部分,即需要与类捆绑使用才有实际意义,则建议定义在类当中,并以类名为前