当前位置:网站首页>Oracle segment advisor, how to deal with row link row migration, reduce high water level
Oracle segment advisor, how to deal with row link row migration, reduce high water level
2022-07-02 07:12:00 【Virtuous time】
Oracle Yes 3 A background program that runs regularly , Consultant Duan suggested 、SQL Statement diagnosis 、 collect Statistics , The recommendation of the consultant is to analyze whether the distribution of table data in the data block is reasonable , Such as whether to generate row links 、 Line migration 、 Whether the high water level is reasonable .
Check whether consultant Duan suggests enabling
SELECT client_name ,status ,consumer_group
FROM dba_autotask_client
ORDER BY client_name;
see auto space advisor The status of this line
Enable the section consultant's suggestion
-- Enable
BEGIN
DBMS_AUTO_TASK_ADMIN.ENABLE(
client_name => 'sql tuning advisor',
operation => NULL,
window_name => NULL);
END;
/
-- see
SELECT window_name,TO_CHAR(window_next_time,'YYYY-MM-DD HH24:MI:SS')
,sql_tune_advisor
FROM dba_autotask_window_clients;
Check the content suggested by the consultant
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('FALSE', 'FALSE', 'FALSE'));
select
'Task Name : ' || f.task_name || chr(10) ||
'Start Run Time : ' || TO_CHAR(execution_start, 'dd-mon-yy hh24:mi') || chr (10) ||
'Segment Name : ' || o.attr2 || chr(10) ||
'Segment Type : ' || o.type || chr(10) ||
'Partition Name : ' || o.attr3 || chr(10) ||
'Message : ' || f.message || chr(10) ||
'More Info : ' || f.more_info || chr(10) ||
'------------------------------------------------------' Advice
FROM dba_advisor_findings f
,dba_advisor_objects o
,dba_advisor_executions e
WHERE o.task_id = f.task_id
AND o.object_id = f.object_id
AND f.task_id = e.task_id
AND e. execution_start > sysdate - 1
AND e.advisor_name = 'Segment Advisor'
ORDER BY f.task_name;
What is a line link
Row linking is due to its large amount of data ( Initial or later updated ), As a result, a row of data needs to span multiple data blocks , This is the line link .
What is row migration
A row data block is smaller initially or after being updated , It will be put into other data blocks with space , Only one pointer is reserved in the original data block , Point to the data block where the data is stored , This is row migration .
What are the disadvantages of row linking and row migration
When reading data, redundant I/O.
How to handle row linking and row migration
1. Move
- Move table alter table xxx move;
- Rebuild all indexes of the table
it is to be noted that , During this period, this table cannot have transactions .
2. Data migration
- Run an analysis script to analyze the linked data
- Insert the data generated by row linking and row migration into the temporary table
- Delete the data of row link and row migration generated by the original table
- Insert the data of the temporary table into the original table
3. Use the data pump to import and export the reconstruction table
What is high water level
High water level is the dividing line between unused data blocks and used data blocks , When querying data, start from the high water mark and look down .
How to lower the high water level
Yes 4 Medium method :
1. Contractile table
- Enable row migration alter table emp enable row movement
- Execute shrink alter table emp shrink space;
- Rebuild index
2.truncate surface
3. Move table ( Need to re index )
4. Use the data pump to export the table , Delete table , Re import
边栏推荐
猜你喜欢
sqli-labs通關匯總-page2
Solve the problem of bindchange event jitter of swiper component of wechat applet
SQLI-LABS通关(less18-less20)
The boss said: whoever wants to use double to define the amount of goods, just pack up and go
sparksql数据倾斜那些事儿
Review of reflection topics
ssm人事管理系统
CSRF攻击
在php的开发环境中如何调取WebService?
sqli-labs通关汇总-page3
随机推荐
解决微信小程序swiper组件bindchange事件抖动问题
UEditor .Net版本任意文件上传漏洞复现
Sqli-labs customs clearance (less18-less20)
php中的二维数组去重
Oracle EBS database monitoring -zabbix+zabbix-agent2+orabbix
In depth study of JVM bottom layer (3): garbage collector and memory allocation strategy
搭建frp进行内网穿透
TCP攻击
Ingress Controller 0.47.0的Yaml文件
Build FRP for intranet penetration
Oracle rman自动恢复脚本(生产数据向测试迁移)
Ceaspectuss shipping company shipping artificial intelligence products, anytime, anywhere container inspection and reporting to achieve cloud yard, shipping company intelligent digital container contr
MySQL中的正则表达式
Data warehouse model fact table model design
JS to determine whether there is a value in the object in the array
In depth study of JVM bottom layer (II): hotspot virtual machine object
Oracle RMAN automatic recovery script (migration of production data to test)
CSRF attack
ORACLE 11G利用 ORDS+pljson来实现json_table 效果
Oracle rman半自动恢复脚本-restore阶段