开发者社区> 问答> 正文

RDS MSSQL FTP导入数据之bakfile corrupted 错误处理



FTP 方式迁移自建 MSSQL 数据库实例到 RDS MSSQL


可以通过 RDS 控制台 》数据库管理 》 备份文件(bak)迁入功能进行自建数据库数据导入操作。

注:

  • 具体操作步骤请参考 使用FTP迁移数据
  • 需要使用 FileZilla 3.6.0.2 或 3.5.3 版本进行传输。


2. Bak 文件损坏错误的原因和处理


在导入过程中,控制台有可能会反馈类似下面的错误信息: 导入描述:bakfile corrupted, execute sql error: RESTORE FILELISTONLY from disk = 'D:\Backup\UserRecover_4599336.bak';
完成时间:05-26 19:21:57



2.1 错误信息的原因


  • 生成备份文件的数据库实例版本不是 SQL Server 2005,SQL Server 2008 或 SQL Server 2008R2。

  • 备份文件本身有问题,或者在网络传输的过程中被损坏。


2.2 解决方法


  • MSSQL 版本问题,必须更换自建实例数据库版本,重新生成备份文件。

  • 对于备份文件本身有问题,或者在网络传输过程中损坏的问题,建议您按下面的步骤操作:use database
  • go
  • DBCC CHECKDB WITH NO_INFOMSGS


示例如图:  

在本地数据库上执行 dbcc checkdb,确保该检查成功完成;如果该检查报错,请参照微软官方文档修正错误,之后再进行 dbcc checkdb 检查,直至成功完成,完成后生成 bak 文件。 之后对于支持内网的 FTP 服务器,建议在本地生成 bak 文件的 md5 校验;然后将 bak 文件上传到 ECS 服务器上,并且比对校验,保证公网传输正确;之后请将控制台提供给您的 FTP 地址反馈给我们,我们提供对应的内网地址,从 ECS 上通过内网上传FTP进行恢复。
注:目前仅部分 FTP 服务器(ftp1.rds-internal.aliyuncs.com,ftp2.rds-internal.aliyuncs.com)支持内网使用;对于不支持内网的 FTP 服务器,请直接通过外网上传。
DBCC CHECKDB 的微软官方文档请参考: dbcc checkdb

展开
收起
云栖大讲堂 2017-11-03 16:05:23 8997 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
搭建电商项目架构连接MySQL 立即下载
搭建4层电商项目架构,实战连接MySQL 立即下载
PolarDB MySQL引擎重磅功能及产品能力盛大发布 立即下载

相关镜像