段指导-示例
RDBMS 19.20
参考文档:
Database Administrator’s Guide
19 Managing Space for Schema Objects
19.3.2.4 Running the Segment Advisor Manually
针对表SOE.CUSTOMERS进行段指导
-- 创建段指导
variable id number;
begindeclarename varchar2(100);descr varchar2(500);obj_id number;beginname:='Manual_Employees';descr:='Segment Advisor Example';dbms_advisor.create_task (advisor_name => 'Segment Advisor',task_id => :id,task_name => name,task_desc => descr);dbms_advisor.create_object (task_name => name,object_type => 'TABLE',attr1 => 'SOE',attr2 => 'CUSTOMERS',attr3 => NULL,attr4 => NULL,attr5 => NULL,object_id => obj_id);dbms_advisor.set_task_parameter(task_name => name,parameter => 'recommend_all',value => 'TRUE');dbms_advisor.execute_task(name);end;
end;
/
-- 查看段指导是否运行完毕
select task_name, statusfrom dba_advisor_taskswhere task_name = 'Manual_Employees'and advisor_name = 'Segment Advisor';
-- 查看段指导对应的结果
select af.task_name, ao.attr2 segname, ao.attr3 partition, ao.type, af.message from dba_advisor_findings af, dba_advisor_objects aowhere ao.task_id = af.task_idand ao.object_id = af.object_idand af.task_name = 'Manual_Employees'select task_name,message,more_info from dba_advisor_findings where task_name = 'Manual_Employees'
--select * from DBA_ADVISOR_RECOMMENDATIONS where task_name = 'Manual_Employees'
--select * from DBA_ADVISOR_ACTIONS where task_name = 'Manual_Employees'
select task_name,command,attr1,attr2,attr3 from DBA_ADVISOR_ACTIONS where task_name like '%SYS_AUTO_SPCADV%'
select * from DBA_ADVISOR_OBJECTS where task_name = 'Manual_Employees'
-- 查看近期的段指导建议
select tablespace_name,segment_name,segment_type,partition_name,recommendations,c1from table(dbms_space.asa_recommendations('FALSE', 'FALSE', 'FALSE'));
--部分结果示例
SYS@test>select task_name,message,more_info from dba_advisor_findings where task_name = 'Manual_Employees'2 ;TASK_NAME
--------------------------------------------------------------------------------
MESSAGE
--------------------------------------------------------------------------------
MORE_INFO
--------------------------------------------------------------------------------
Manual_Employees
The free space in the object is less than 10MB.
Allocated Space:180355072: Used Space:178803055: Reclaimable Space :1552017:SYS@test>
SYS@test>select task_name,command,attr1,attr2,attr3 from DBA_ADVISOR_ACTIONS where task_name like '%SYS_AUTO_SPCADV%';TASK_NAME
--------------------------------------------------------------------------------
COMMAND
----------------------------------------------------------------
ATTR1
--------------------------------------------------------------------------------
ATTR2
--------------------------------------------------------------------------------
ATTR3
--------------------------------------------------------------------------------
SYS_AUTO_SPCADV126200902092023
SHRINK SPACE
alter table "OGG"."GGS_DDL_HIST" shrink spaceTASK_NAME
--------------------------------------------------------------------------------
COMMAND
----------------------------------------------------------------
ATTR1
--------------------------------------------------------------------------------
ATTR2
--------------------------------------------------------------------------------
ATTR3
--------------------------------------------------------------------------------
alter table "OGG"."GGS_DDL_HIST" shrink space COMPACT
alter table "OGG"."GGS_DDL_HIST" enable row movementTASK_NAME
--------------------------------------------------------------------------------
COMMAND
----------------------------------------------------------------
ATTR1
--------------------------------------------------------------------------------
ATTR2
--------------------------------------------------------------------------------
ATTR3
--------------------------------------------------------------------------------
SYS_AUTO_SPCADV126200902092023
ENABLE COMPRESSION
alter table "SOE"."ORDERS" compress for oltpTASK_NAME
--------------------------------------------------------------------------------
COMMAND
----------------------------------------------------------------
ATTR1
--------------------------------------------------------------------------------
ATTR2
--------------------------------------------------------------------------------
ATTR3
--------------------------------------------------------------------------------
alter table "SOE"."ORDERS" moveTASK_NAME
--------------------------------------------------------------------------------
COMMAND
----------------------------------------------------------------
ATTR1
--------------------------------------------------------------------------------
ATTR2
--------------------------------------------------------------------------------
ATTR3
--------------------------------------------------------------------------------
SYS_AUTO_SPCADV126200902092023
ENABLE COMPRESSION
alter table "SOE"."CUSTOMERS" compress for oltpTASK_NAME
--------------------------------------------------------------------------------
COMMAND
----------------------------------------------------------------
ATTR1
--------------------------------------------------------------------------------
ATTR2
--------------------------------------------------------------------------------
ATTR3
--------------------------------------------------------------------------------
alter table "SOE"."CUSTOMERS" moveTASK_NAME
--------------------------------------------------------------------------------
COMMAND
----------------------------------------------------------------
ATTR1
--------------------------------------------------------------------------------
ATTR2
--------------------------------------------------------------------------------
ATTR3
--------------------------------------------------------------------------------
SYS_AUTO_SPCADV126200902092023
ENABLE COMPRESSION
alter table "OGG"."GGS_DDL_HIST" compress for oltpTASK_NAME
--------------------------------------------------------------------------------
COMMAND
----------------------------------------------------------------
ATTR1
--------------------------------------------------------------------------------
ATTR2
--------------------------------------------------------------------------------
ATTR3
--------------------------------------------------------------------------------
alter table "OGG"."GGS_DDL_HIST" moveTASK_NAME
--------------------------------------------------------------------------------
COMMAND
----------------------------------------------------------------
ATTR1
--------------------------------------------------------------------------------
ATTR2
--------------------------------------------------------------------------------
ATTR3
--------------------------------------------------------------------------------
SYS_AUTO_SPCADV258251302092023
SHRINK SPACE
alter table "OGG"."GGS_DDL_HIST" shrink spaceTASK_NAME
--------------------------------------------------------------------------------
COMMAND
----------------------------------------------------------------
ATTR1
--------------------------------------------------------------------------------
ATTR2
--------------------------------------------------------------------------------
ATTR3
--------------------------------------------------------------------------------
alter table "OGG"."GGS_DDL_HIST" shrink space COMPACT
alter table "OGG"."GGS_DDL_HIST" enable row movementTASK_NAME
--------------------------------------------------------------------------------
COMMAND
----------------------------------------------------------------
ATTR1
--------------------------------------------------------------------------------
ATTR2
--------------------------------------------------------------------------------
ATTR3
--------------------------------------------------------------------------------
SYS_AUTO_SPCADV616480909092023
SHRINK SPACE
alter table "OGG"."GGS_DDL_HIST" shrink spaceTASK_NAME
--------------------------------------------------------------------------------
COMMAND
----------------------------------------------------------------
ATTR1
--------------------------------------------------------------------------------
ATTR2
--------------------------------------------------------------------------------
ATTR3
--------------------------------------------------------------------------------
alter table "OGG"."GGS_DDL_HIST" shrink space COMPACT
alter table "OGG"."GGS_DDL_HIST" enable row movementTASK_NAME
--------------------------------------------------------------------------------
COMMAND
----------------------------------------------------------------
ATTR1
--------------------------------------------------------------------------------
ATTR2
--------------------------------------------------------------------------------
ATTR3
--------------------------------------------------------------------------------
SYS_AUTO_SPCADV705541309092023
SHRINK SPACE
alter table "OGG"."GGS_DDL_HIST" shrink spaceTASK_NAME
--------------------------------------------------------------------------------
COMMAND
----------------------------------------------------------------
ATTR1
--------------------------------------------------------------------------------
ATTR2
--------------------------------------------------------------------------------
ATTR3
--------------------------------------------------------------------------------
alter table "OGG"."GGS_DDL_HIST" shrink space COMPACT
alter table "OGG"."GGS_DDL_HIST" enable row movementTASK_NAME
--------------------------------------------------------------------------------
COMMAND
----------------------------------------------------------------
ATTR1
--------------------------------------------------------------------------------
ATTR2
--------------------------------------------------------------------------------
ATTR3
--------------------------------------------------------------------------------
SYS_AUTO_SPCADV705541309092023
ENABLE COMPRESSION
alter table "OGG"."GGS_DDL_HIST" compress for oltpTASK_NAME
--------------------------------------------------------------------------------
COMMAND
----------------------------------------------------------------
ATTR1
--------------------------------------------------------------------------------
ATTR2
--------------------------------------------------------------------------------
ATTR3
--------------------------------------------------------------------------------
alter table "OGG"."GGS_DDL_HIST" move8 rows selected.SYS@test>
END