
ORACLE 分区表move操作
发布日期:2021-05-08 20:10:04
浏览次数:24
分类:精选文章
本文共 1900 字,大约阅读时间需要 6 分钟。
分析表的行链接和行迁移情况
为了分析表的行链接和行迁移情况,我执行以下操作:
analyze table HCP.HR_PERSONNEL_BASE list chained rows into chained_rows;
接下来,查看发生行迁移的数据量:
SELECT table_name, count(*) FROM sys.chained_rows GROUP BY table_name;
完成分析后,需要重新执行分析操作:
DELETE FROM sys.chained_rows WHERE TABLE_NAME='HR_CARDING';analyze table HCP.HR_PERSONNEL_BASE list chained rows into chained_rows;
查看表大小:
SELECT TRUNC(SUM(BYTES)/1024/1024)||'MB' FROM DBA_SEGMENTS WHERE SEGMENT_NAME='HR_CARDING';
为了消除行迁移,可以执行MOVE TABLE操作:
ALTER TABLE HCP.HR_CARDING MOVE PARTITION {partition_name} NOLOGGING PARALLEL 2;
如果需要更具体地执行MOVE PARTITION操作,可以参考以下SQL语句:
select 'ALTER TABLE ' || 'HCP.' || table_name || ' MOVE PARTITION ' || partition_name || ' NOLOGGING PARALLEL 2;'from dba_tab_partitions where table_owner = 'HCP' AND table_name = 'HR_CARDING';
查看索引状态:
SELECT OWNER, INDEX_NAME, TABLE_NAME, STATUS FROM DBA_INDEXES WHERE TABLE_NAME='HR_OVERTIME';ALTER INDEX HCP.HR_OVERTIME_IDX_DUP REBUILD NOLOGGING PARALLEL 2;
查看分区索引状态:
SELECT T.OWNER, T.TABLE_NAME, I.INDEX_NAME, I.PARTITION_NAME, I.STATUS FROM DBA_IND_PARTITIONS I, DBA_PART_INDEXES T WHERE I.INDEX_NAME = T.INDEX_NAME AND T.OWNER = 'HCP' AND TABLE_NAME = 'HR_CARDING' ORDER BY 3, 4;
如果需要重建分区索引,可以执行以下操作:
SELECT 'ALTER INDEX ' || 'HCP.' || INDEX_NAME || ' REBUILD PARTITION ' || PARTITION_NAME || ' ONLINE PARALLEL 12;'FROM (SELECT T.OWNER, T.TABLE_NAME, I.INDEX_NAME, I.PARTITION_NAME, I.STATUS FROM DBA_IND_PARTITIONS I, DBA_PART_INDEXES T WHERE I.INDEX_NAME = T.INDEX_NAME AND T.OWNER = 'HCP' AND TABLE_NAME = 'HR_CARDING' ORDER BY 3, 4) WHERE PARTITION_NAME='YEAR_2020';
最后,重新收集统计信息:
begindbms_stats.gather_table_stats(ownname => 'HCP', tabname => 'HR_CARDING');end;
以及收集特定索引的统计信息:
begindbms_stats.gather_index_stats(ownname => 'HCP', indname => 'HR_CARD_ABSENCE_INDX1');end;
发表评论
最新留言
关注你微信了!
[***.104.42.241]2025年03月28日 05时47分39秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
值类型与引用类型(中)
2019-03-06
MSSQL 2005 数据库变成可疑状态
2019-03-06
QBlog V2.5 源码开放下载(ASP.NET 番外系列之开端)
2019-03-06
秋色园引发CPU百分百命案的事件分析与总结
2019-03-06
安装jdk并配置环境变量
2019-03-06
稀疏数组
2019-03-06
js的严格模式
2019-03-06
idea的安装和无限期试用
2019-03-06
Oracle VM VirtualBox安装PVE虚拟机
2019-03-06
【转】如何用css限制文字长度,使溢出的内容用省略号…显示
2019-03-06
Android MediaPlayer setDataSource failed
2019-03-06
ASP.NET Core 实战:Linux 小白的 .NET Core 部署之路
2019-03-06
【nodejs原理&源码杂记(8)】Timer模块与基于二叉堆的定时器
2019-03-06
大前端的自动化工厂(1)——Yeoman
2019-03-06
数据仓库建模方法论
2019-03-06
虚拟机搭建hadoop环境
2019-03-06
DataStax Bulk Loader教程(四)
2019-03-06
.NET应用框架架构设计实践 - 概述
2019-03-06
Rust 内置 trait :PartialEq 和 Eq
2019-03-06