oracle大表碎片分析整理 show_space分析

Oracle大表碎片分析整理

expdp导出表耗时6分钟,预估大小69.7GB,导出大小6.8GB,大概有61GB的碎片

利用show_space查看表的相关信息如下:

复制代码
Total Blocks............................9136640
Total Bytes.............................74847354880
Unused Blocks...........................0
Unused Bytes............................0
Last Used Ext FileId....................8
Last Used Ext BlockId...................1712256
Last Used Block.........................8192
The segment is analyzed.
0% -- 25% free space blocks.............6
0% -- 25% free space bytes..............49152
25% -- 50% free space blocks............9
25% -- 50% free space bytes.............73728
50% -- 75% free space blocks............19
50% -- 75% free space bytes.............155648
75% -- 100% free space blocks...........8006297
75% -- 100% free space bytes............65587585024  --->> ≈ 61GB
Unused Blocks...........................0
Unused Bytes............................0
Total Blocks............................1121012
Total bytes.............................9183330304
 -----------------------------------------------

清理碎片之前磁盘队列很高

对表做了truncate之后再次查看,以及过了8小时之后查看的结果对比如下:

复制代码
truncate后的数据:

PL/SQL 过程已成功完成。
Total Blocks............................8192 			 		---->总分配的数据块数量
Total Bytes.............................67108864 			---->总分配的数据块大小 8192*8*1024
Unused Blocks...........................8158   				---->未使用的数据块数量
Unused Bytes............................66830336			---->未使用的数据块大小 8158*8*1024
Last Used Ext FileId....................4
Last Used Ext BlockId...................875520
Last Used Block.........................34
The segment is analyzed.
0% -- 25% free space blocks.............0
0% -- 25% free space bytes..............0
25% -- 50% free space blocks............0
25% -- 50% free space bytes.............0
50% -- 75% free space blocks............0
50% -- 75% free space bytes.............0
75% -- 100% free space blocks...........0
75% -- 100% free space bytes............0
Unused Blocks...........................0
Unused Bytes............................0
Total Blocks............................0
Total bytes.............................0
 -----------------------------------------------

8小时后再次查看

PL/SQL 过程已成功完成。
Total Blocks............................8192
Total Bytes.............................67108864
Unused Blocks...........................7936
Unused Bytes............................65011712
Last Used Ext FileId....................4
Last Used Ext BlockId...................875520
Last Used Block.........................256
The segment is analyzed.
0% -- 25% free space blocks.............2
0% -- 25% free space bytes..............16384
25% -- 50% free space blocks............2
25% -- 50% free space bytes.............16384
50% -- 75% free space blocks............3
50% -- 75% free space bytes.............24576
75% -- 100% free space blocks...........69
75% -- 100% free space bytes............565248
Unused Blocks...........................142
Unused Bytes............................1163264
Total Blocks............................4
Total bytes.............................32768
 -----------------------------------------------

PL/SQL 过程已成功完成。

对表做一次统计信息收集后再查看一次

复制代码
execute dbms_stats.gather_table_stats(ownname => 'test',tabname => 'tabname' ,estimate_percent => null ,method_opt => 'for all indexed columns' ,cascade => true);

Total Blocks............................8192
Total Bytes.............................67108864
Unused Blocks...........................7936
Unused Bytes............................65011712
Last Used Ext FileId....................4
Last Used Ext BlockId...................875520
Last Used Block.........................256
The segment is analyzed.
0% -- 25% free space blocks.............1
0% -- 25% free space bytes..............8192
25% -- 50% free space blocks............3
25% -- 50% free space bytes.............24576
50% -- 75% free space blocks............1
50% -- 75% free space bytes.............8192
75% -- 100% free space blocks...........69
75% -- 100% free space bytes............565248
Unused Blocks...........................142
Unused Bytes............................1163264
Total Blocks............................6
Total bytes.............................49152
 -----------------------------------------------

PL/SQL 过程已成功完成。

清理之后磁盘队列基本为0

相关推荐
hello1114-2 分钟前
Redis学习打卡-Day5-Redis 持久化
数据库·redis·学习
ALex_zry2 分钟前
业务场景中使用 SQL 实现快速数据更新与插入
数据库·sql
佩可official13 分钟前
SQL每日一练(3)
数据库·sql
怡雪~18 分钟前
redis使用RDB文件恢复数据
数据库·redis·缓存
大数据张老师1 小时前
对比Redis与向量数据库(如Milvus)在AI中的应用
数据库·redis·milvus
白嫖不白嫖2 小时前
MySQL 8.0 和 5.7 快速生成测试数据
android·数据库·mysql
CAT_cwds2 小时前
使用MybatisPlus实现sql日志打印优化
数据库·python·sql
YUNYINGXIA3 小时前
Python操作MySQL数据库
数据库·oracle
java1234_小锋3 小时前
一周学会Pandas2 Python数据处理与分析-Pandas2数据合并与对比-pd.merge():数据库风格合并
数据库·python·pandas
影子24014 小时前
sqlserver数据库查询执行慢的sql、查询隔离级别、设置快照模式、查询锁表进程、锁表sql、解锁等
数据库·sql·sqlserver