首页 > 代码库 > sybase数据迁移dat文件导入msg 8009

sybase数据迁移dat文件导入msg 8009

这两天一直在纠结sybase数据库dat文件的导入问题,查了一堆的资料,慢慢的总结出了自己的一点小经验。

个人觉得dat文件的导入首先必须满足的要求是,新的数据库的空间大小必须大于原有数据库的空间大小,本人现在就在导入一个6G多大的dat文件,它的原有数据库的大小为85G,sybase数据库的初始大小最大应该是只能设最多32G,可以通过alter database databasename(数据库名) on deviceName(新建一个设备名)=size(大小,默认单位为MB,可以用G),我的语句是 alter database creditdb on creditData02="30G"。假如空间大小满足不了,这时进行导入操作会报错Msg 3105,Data on dump will not fit into current database.Need XXXXMbyte database,表示需要多少空间才能进行导入。

再说Msg 8009吧,我的解决方式是在load database databasename from "/XXXX/XXXX.dat" 时,因为原文件可能是在dump导出生成时加了compress压缩命令进行了压缩导出生成的dat文件,如果要成功导入,必须添加"compress::",我的语句是 load database creditdb from "compression:sybase/credit_2014.dat"。进行解压导入。

如果要进行压缩导出dat文件语句也是差不多,

dump database creditdb to "compress::D/creditdb.dat"  。

其他人遇到的Msg 8009可能还有其他原因和解决方式。本人暂时只遇到这种情况。

 

sybase数据迁移dat文件导入msg 8009