- 论坛徽章:
- 0
|
求教:关于db2 export,impot导BLOB字段数据问题
4初步判断是一次移动60000多行数据发生的问题。
1)通过db2 "export to photo050104.del of del lobs to /db2/db2inst3/photo lobfile lob1 MODIFIED BY lobsinfile messages photo.msg select * from ykt_cur.t_cif_photo where stuemp_no like '04%'" 只导出40行数据,然后导入没有问题
2) 将数据全部导出后,清空原来的表a,全部导入,仍然发现同样问题。
可以判断不是数据库或者表的问题
3) 为了判断导出的数据是否存在不可识别的问题,我分析了photo050104.del 中的lob字段photo的定义。
ls -l
-rw-r----- 1 db2inst3 db2iadm3 9497558998 Jan 4 09:57 lob1.001
-rw-r----- 1 db2inst3 db2iadm3 153 Jan 4 09:57 photo.msg
-rw-r----- 1 db2inst3 db2iadm3 5767562 Jan 4 09:57 photo050104.del
tail -10 photo050104.del
"***","04802***","辛","100533","n006",,"***\***\04802***.jpg","lob1.001.9497009982.258332/",,,
文件名 /小文件开始位置/小文件偏移量(长度)
先写了文件分割程序,把9G的lob1.001分割后,发现所有的jpg文件都是正确显示的,因此导出的lob1.001内容没有问题,是不是9G大了一点。但是solaris下支持大于2G的文件,而且我如果在win2000下用客户端同样也不行,文件系统是nfs的。所以现在我只能通过java程序往新数据库update图片
4 )我导出的时候使用了 lobfile lob1,lob2,lob3,。。,lob10,发现还是直接生成了一个9G的lob1.001,没有分为10个小文件。看来lobfile参数不能强制将导出文件分为10个
5 ) 试图通过import 参数commitcount 100,同时加大数据库日志文件的大小 ,一次导入100次提交,发现不行,仍然5000行后一样
通过restartcount 50000,直接读50000行开始,发现还是不行。从读文件时间上,发现import还是整个9G文件读了一遍。 |
|