问题场景
使用以下命令成功导出数据:
exp --sql 'icpdbcds/"xxx"' FILE=icpdbcds.export OWNER=icpdbcds
但尝试导入时报错:
imp 'icpdbcds/"xxx"' file=icpdbcds.export fromuser=icpdbcds touser=icpdbcds_dev
YAS-08023, invalid file format, magic number error.
根本原因
导出时使用了 --sql 参数,该参数会生成可读的 SQL 文件。但 imp 工具要求读取的是二进制格式的导出文件,因此会出现文件格式不兼容的错误。
解决方案
重新导出数据时,移除 --sql 参数即可。例如:
exp FILE=icpdbcds.export OWNER=icpdbcds
这样导出的文件为二进制格式,imp 即可正常识别并导入。
影响版本
该问题适用于所有 YashanDB 当前版本。
温馨提示
imp 工具不支持 CSV 或文本格式的 SQL 文件,请务必确认导出格式为标准二进制备份。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。