行链接和行迁移
2014-04-10 21:55
351 查看
CHAIN_CNT:虽然行链接和行迁移的概念不同,但在ORACLE里其实不太分这个,CHAIN_CNT是总的数量 PCTFREE: PCTFREE:为一个块保留的空间百分比,表示数据块在什么情况下可以被insert,默认是10,表示当数据块的可用空间低于10%后,就不可以被insert了,只能被用于update;即: 当使用一个block时,在达到pctfree之前,该block是一直可以被插入的,这个时候处在上升期。 create table TEST_1 ( OWNER VARCHAR2(30), OBJECT_NAME VARCHAR2(128), SUBOBJECT_NAME VARCHAR2(30), OBJECT_ID NUMBER, DATA_OBJECT_ID NUMBER, OBJECT_TYPE VARCHAR2(19), CREATED DATE, LAST_DDL_TIME DATE, TIMESTAMP VARCHAR2(19), STATUS VARCHAR2(7), TEMPORARY VARCHAR2(1), GENERATED VARCHAR2(1), SECONDARY VARCHAR2(1), NAMESPACE NUMBER, EDITION_NAME VARCHAR2(30) ) tablespace USERS pctfree 0 initrans 1 maxtrans 255 storage ( initial 64K next 1M minextents 1 maxextents unlimited ); SQL> select owner , table_name , pct_free , pct_used , avg_row_len , num_rows , chain_cnt , chain_cnt/num_rows from dba_tables where table_name='TEST_1' order by chain_cnt desc; 2 3 4 5 6 7 8 9 10 11 12 13 14 15 OWNER TABLE_NAME PCT_FREE PCT_USED AVG_ROW_LEN NUM_ROWS CHAIN_CNT CHAIN_CNT/NUM_ROWS ------------------------------ ------------------------------ ---------- ---------- ----------- ---------- ---------- ------------------ SCOTT TEST_1 0 pct_free=0 稍微update一下就产生hang迁移 DECLARE CURSOR cur IS SELECT a.ROWID from test_1 a ; V_COUNTER NUMBER; BEGIN V_COUNTER := 0; FOR row IN cur LOOP UPDATE test_1 SET OBJECT_ID = 9999 ,OBJECT_NAME='AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' WHERE ROWID = row.ROWID ; V_COUNTER := V_COUNTER + 1; IF (V_COUNTER >= 10000) THEN COMMIT; V_COUNTER := 0; END IF; END LOOP; COMMIT; END; 批量update SQL> analyze table TEST_1 compute statistics; SQL> set linesize 200 SQL> select owner , table_name , pct_free , pct_used , avg_row_len , num_rows , chain_cnt , chain_cnt/num_rows from dba_tables where table_name='TEST_1' order by chain_cnt desc; 2 3 4 5 6 7 8 9 10 11 12 13 14 15 OWNER TABLE_NAME PCT_FREE PCT_USED AVG_ROW_LEN NUM_ROWS CHAIN_CNT CHAIN_CNT/NUM_ROWS ------------------------------ ------------------------------ ---------- ---------- ----------- ---------- ---------- ------------------ SCOTT TEST_1 0 170 8886376 5059910 .569400845
相关文章推荐
- CentOS下源码安装Apache2.4+PHP5.4+MySQL5.5
- Qt 支持自定义数据类型的托拽(Supporting Custom Drag Types)
- 使用zabbix discovery监控网卡百兆
- gdb调试出现的错误
- Android开发笔记--基础篇(二)
- .NET(C#):GetHashCode 的作用
- mac ssd开启trim
- Android下的动画处理
- CocoaPods管理依赖库
- 什么是hadoop
- #每日一练-1#
- C++学习之智能指针--auto_ptr、scoped_ptr、scoped_array、shared_ptr、shared_array、weak_ptr
- 判断磁盘类型
- “打工女皇帝”吴士宏-永远先走一步
- 暑期实习4月份笔试试题解答-Android 工程师(3)
- 大话数据结构之第二章算法总结,重点知识,时间复杂度
- 嗯
- xcode快捷键
- 随机数的产生——————摘录
- RIB表与FIB表、ARB表与FDB表的区别