我们正在做一个数据迁移项目,其中源数据库和目标数据库都是 MySql(版本:5.0.45-community-nt)。
目前,源数据库和目标数据库都托管在我的本地计算机(Windows XP SP2)上。
我们正在使用一个名为“Pentaho spoon”的工具来编写用于迁移的 ETL 脚本。勺子转换获取数据并将其加载到目标数据库中。
转换是一组选择和插入步骤。
问题 :
对于转换中的选择语句,脚本的执行会引发以下错误:
Can't create/write to file 'C:\Program Files\MySQL\MySQL Server 5.0\Data\#sql_29c_0.MYI' (Errcode: 17)
ErrCode 17 指:操作系统错误代码17:文件存在
注意到在目录中创建了一些以 format 命名的随机临时文件#sql_29c_0.MYI
: #sql_29c_0.MYD
在C:\Program Files\MySQL\MySQL Server 5.0\Data
运行时,这些文件在进程中被删除并以相同的名称创建。
Pentaho 勺子使用多线程来执行转换。
有没有人遇到过这个问题?解决上述错误的任何指示都会有所帮助。
如果需要有关该错误的任何进一步信息,请告诉我。
谢谢
编辑(8 月 27 日至 10 日):
要提供有关此错误的更多信息:
勺子转换有一个获取 6000 行的步骤,然后这些行中的每一行都进一步用于涉及两个表连接的其他查询中。此连接查询因上述错误而失败 - Errcode 17
。