- 论坛徽章:
- 0
|
看了一篇优化的文章,说如果表的extents数量过多,需要对表进行重建工作,原文表述如下:
3.4 表扩展块情况
--FileName: extents.sql
--获取系统中extents最多的表的表名,所在的数据库名,extents的数量
--sysextents表9.2版本和9.4版本的结构有不同,但不影响本sql执行
UNLOAD TO extents.txt DELIMITER " "
SELECT FIRST 20 t.dbsname, t.tabname, count(*)
FROM sysmaster:systabnames t, sysmaster:sysextents e
WHERE t.dbsname = e.dbsname
AND t.tabname = e.tabname
AND t.tabname[1,3] != "sys"
GROUP BY 1,2
ORDER BY 3 DESC
如果发现表的extents数量过多,就要考虑调整extents的大小,并且重建表。
我在我的数据库上执行了一下,得到如下结果:
crm historycallinfo 218.0
crm historycallinfo 218.0
crm updateuserinfo 180.0
crm icallinfo_or 176.0
crm contact 163.0
crm puserinfo 163.0
crm his_custumurl 161.0
crm \ 144_447 160.0
crm icallinfo_em 139.0
crm icallinfo_de 137.0
crm dayinfo 131.0
crm icontactus_ 129.0
crm ipuserinfo_us 128.0
crm icontactcom_ 128.0
crm iupdateuserinfous_ 127.0
crm ipuserinfo_companyname 125.0
crm workplan 123.0
crm personal 118.0
crm sellersum 115.0
crm historycallinfo_call 114.0
不知道这样算不算多的? |
|