使用ENTRPRIEST迁移工具包迁移MySQL数据库将其迁移到PostgreSQL



我正在尝试使用EntrprisingB迁移工具将我的MySQL数据库转换为PostgreSQL。我的设置如下:

  • Windows 10 x64
  • MySQL 5.5.52社区版GPL
  • EDB PostgreSQL 9.6.2-2
  • EntrprishingB迁移工具包50.0.1

问题是 - 它成功地连接到源代码mysql和target postgresql,但随后失败了"未识别的配置参数db_dialect":

C:Program Files (x86)edbmtkbin>runMTK -sourcedbtype mysql s2c_data 
Running EnterpriseDB Migration Toolkit (Build 50.0.1) ...  
Source database connectivity info...  
conn=jdbc:mysql://localhost:3306/s2c_data?zeroDateTimeBehavior=convertToNull 
user =s2c_data_user  
password=******  

Target database connectivity info...  
conn =jdbc:edb://localhost:5432/s2c_data  
user =s2c_data_user 
password=******  

Connecting with source MySQL database server...  
Connected to MySQL, version '5.5.52-log'  
Connecting with target EDB Postgres database server...  
Connected to PostgreSQL, version '9.6.2'  
Importing mysql schema s2c_data... 
MTK-17003:Error in copy tables: java.sql.SQLException: com.edb.util.PSQLException: ERROR: unrecognized configuration parameter: "db_dialect" 
MTK-03000: General Error DB-null: java.sql.SQLException: java.sql.SQLException: java.sql.SQLException: com.edb.util.PSQLException: ERROR: unrecognized configuration parameter: "db_dialect"

One or more schema objects could not be imported during the migration process. Please review the migration output for more details.
Migration logs have been saved to C:UsersAlex_R.enterprisedbmigration-toolkitlogs
******************** Migration Summary ********************
Total objects: 0 Successful count: 0 Failed count: 0 Invalid count: 0
*************************************************************
C:Program Files (x86)edbmtkbin>

有人面对同样的问题吗?似乎是EDB MTK中的一个错误,但我可能缺少一些东西。将感谢任何帮助。

根据EDB的文档,这是其Postgres Plus Postgresql的叉子的参数。

因此,看起来这种迁移工具仅在您迁移到其专有版本的PostgreSQL而不是标准版本时起作用。

我认为您应该参考该工具的文档。

根据本文档,也许您可以尝试添加一个命令行选项:

C:Program Files (x86)edbmtkbin>runMTK -sourcedbtype mysql -targetdbtype postgresql s2c_data

我找到了解决方案-dbtransfer。原始版本非常古老,因此我不得不修复几件事。来源在这里。随时将其用于您的项目。

最新更新