Chinaunix

标题: 请问:informix的chunk被rm掉了,现在不想要这个chunk了,如何把chunk删除 [打印本页]

作者: ykyxgz    时间: 2011-05-04 16:57
标题: 请问:informix的chunk被rm掉了,现在不想要这个chunk了,如何把chunk删除
informix的chunk被rm掉了,现在不想要这个chunk了,如何把chunk删除。这个chunk上已经有300万数据了
作者: liaosnet    时间: 2011-05-04 17:08
这个看是在online下rm掉chunk,还是offline下rm掉的。。。

不管哪种,都应该先把该chunk上所有的数据删除后,再删除chunk..
删除chunk使用onspaces -d 命令。。
作者: wolfop    时间: 2011-05-04 17:26
没戏,没法删除,从备份恢复吧。
作者: ykyxgz    时间: 2011-05-04 18:19
回复 3# wolfop


    表总共有4000w的数据,数据库可以重启,也能再次的导入数据,但是这个chunk状态为PD,并且上有数据,所以在高优的时候会报错如下:
  252: Cannot get system information for table.

  155: ISAM error: Primary and Mirror chunks are bad
Error in line 1
Near character position 42

如果要初始化的话,代价太大了
作者: liaosnet    时间: 2011-05-05 09:57
回复  wolfop


    表总共有4000w的数据,数据库可以重启,也能再次的导入数据,但是这个chunk状态为PD,并 ...
ykyxgz 发表于 2011-05-04 18:19



    重启了话就基本上没戏了。。
作者: 升腾    时间: 2011-05-08 19:43
二、dbspace与块信息
*sysdbspaces ————>; dbspace
*syschunks ————>; 块
*syschkio ————>; 块I/O
*syschfree ————>; 块自由空间 注:syschfree是个不支持的表

create table "sysmaster".sysdbspaces {dbspace配置}
(
dbsnum smallint, {dbspace号 }
name char(1, {dbspace名 }
owner char(, {dbspace拥有者 }
fchunk smallint, {dbspace第一块 }
nchunks smallint, {dbspace块数 }
is_mirrored integer, {dbspace是否镜像 1=YES,0=NO}
is_blobspace integer, {dbspace是否大对象空间 }
is_temp integer, {dbspace是否临时,1=YES,0=NO }
flags smallint {dbspace标志 }
);
grant select on sysdbspaces to public;

create table "sysmaster".syschunks {chunk配置}
(
chknum smallint, {chunk号 }
dbsnum smallint, {dbspace号 }
nxchknum smallint, {dbspace中下一个块号 }
chksize integer, {chunk中的页 }
offset integer, {设备页偏移量 }
nfree integer, {块中未用页数 }
is_offline integer, {chunk是否脱机,1=YES,0=NO}
is_recovering integer, {chunk是否恢复,1=YES,0=NO}
is_blobchunk integer, {chunk是否blobchunk,1=YES,0=NO}
is_inconsistent integer, {chunk是否不一致,1=YES,0=NO }
flags smallint, {由bitbal转换的块标志 }
fname char(12,{设备路径名 }
mfname char(12,{镜像设备路径名 }
moffset integer, {镜像设备偏移量 }
mis_offline integer, {镜像是否脱机,1=YES,0=NO }
mis_recovering integer, {镜像是否恢复,1=YES,0=NO }
mflags smallint {镜像块标志 }
);
grant select on syschunks to public;

create table "sysmaster".syschfree {显示块中的未用空间块}
(
chknum integer, { chunk number 块号 }
extnum integer, { extent number in chunk 块区域号 }
start integer, { physical addr of start 开始物理地址 }
leng integer { length of extent 区域长度 }
);
create unique index syschfreeidx on syschfree (chknum, extnum);
revoke all on syschfree from public;
grant select on syschfree to public;

create table "sysmaster".syschkio {块设备I/O统计信息}
(
chunknum smallint, {块号 }
reads integer, {读操作数 }
pagesread integer, {读页数 }
writes integer, {写操作数 }
pageswritten integer, {写页数 }
mreads integer, {镜像读操作数 }
mpagesread integer, {镜像读页数 }
mwrites integer, {镜像写操作数 }
mpageswritten integer {镜像写页数 }
);
grant select on syschkio to public;

原帖: http://www-900.ibm.com/cn/suppor ... DocId=2897869C26000




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2