中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档 | 网通镜像
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > 编程语言 > 综合其它
数据库中表的extents数及处理的shell
作者:佚名 时间:2007-09-18 16:28 出处:ChinaITLab 责编:月夜寒箫
              摘要:数据库中表的extents数及处理的shell

一、检查数据库中所有的表的extents数并输出到文件中

输出的文件中,表是按extents数目大小倒序排列

>cat check_extents.sh

代码:

today=`date +%Y%m%d%H%M%S`

dbaccess - <<EOF > sql_tab_ext_${today}.txt

database sysmaster;

select dbsname,tabname,

count(*) num_of_extents,

sum( pe_size ) total_size

from systabnames,sysptnext

where partnum = pe_partnum

group by 1, 2

order by 3 desc,4 desc;

EOF

二、如发现表的extents过大,可采取下列步骤

0。dbschema 导出表结构

1。rename 原表名

2。以原结构新建表,但增大extents和next size

3。unload出原表数据

4。dbload 数据到新表

例如发现表t_prox_pb_log的extents过大,可以这样:

0.dbschema -t t_prox_pb_log -d dbname -ss t_prox_pb_log.sql

1-4步可以写成pblog.sh如下:

>cat pblog.sh

(表结构用第0步生产的结构即可)

代码:

dbaccess << -- 2>>pblog.err

!

database dbname;

rename table t_prox_pb_log to t_pb_log_bak;

create table t_prox_pb_log

 (

oper_kind char(3) not null ,

oper_detail char(6) not null ,

trn_mode char(1) not null ,

user_no1 char(20) not null ,

cust_name char(40) not null ,

trn_amt float,

cert_no integer,

cert_num integer,

trn_code char(4),

trn_date char(8),

trn_time char(6),

trn_bank char(4),

oper_no char(4),

seq_no smallint,

trn_stat char(1),

primary key (trn_date,trn_bank,oper_no,seq_no)

 ) extent size 2048 next size 1024 lock mode row;

revoke all on t_prox_pb_log from "public";

create index i_prox_pb_log2 on t_prox_pb_log (user_no1);

unload to "t_pb_log.txt" select * from t_pb_log_bak;

!

--

dbload -d dbname -c load_log -l dbload_errlog -n 1000 -k

控制文件load_log如下:

> cat load_log

FILE t_pb_log.txt DELIMITER '|' 15;

INSERT INTO t_prox_pb_log;


关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有