如何将H2Database数据库文件转换为MySQL数据库.sql文件?

Las*_*nga 8 mysql h2

我在H2Database文件中有一些数据,我想将其转换为MySQL .sql数据库文件.我可以遵循哪些方法?

Elo*_*Elo 8

在回答Thomas Mueller时,SquirrelSQL对我来说很好.以下是Windows转换H2数据库的过程:

  1. 转到"驱动程序列表",默认情况下一切都是红色.

  2. 选择"H2"驱动程序,并在"Extra Class Path"中指定"h2-1.3.173.jar"的完整路径(例如).H2驱动程序应在列表中显示蓝色检查.

  3. 选择目标驱动程序(PostgreSQL,MySQL),并执行相同操作,例如对于PostgreSQL,在Extra Class Path中指定"postgresql-9.4-1201.jdbc41.jar"的完整路径.

  4. 转到"别名",然后单击"+"获取H2:配置JDBC链,例如复制/粘贴启动H2时获得的jdbc链,并对目标数据库执行相同操作:单击"+",配置和"测试".

  5. 双击别名时,应该在新选项卡中看到数据库中的所有内容.转到源数据库中的表,对所有表执行多选并右键单击:"复制表".

  6. 从Alias转到目标数据库,然后执行"粘贴表".完全复制所有表后,还会生成外键引用.

  7. 检查你的主键:从H2到PostgreSQL,我丢失了主键约束和自动增量功能.您还可以通过右键单击重命名列和表:"refactor".我通过禁用名称检查选项,使用它在完全复制后重命名保留字列.

    这对我很有用.


Tho*_*ler 6

H2数据库生成的SQL脚本与MySQL支持的SQL不完全兼容.您必须手动更改SQL脚本.这要求你很好地了解H2和MySQL.

为了避免这个问题,将数据从H2复制到MySQL的另一种可能更简单的方法是使用第三方工具,例如SQuirreL SQLSQuirreL DB Copy Plugin插件.(首先,您需要安装SQuirreL SQL,并在此基础上安装SQuirreL DB Copy插件.)


Tho*_*ler 1

SCRIPTH2数据库允许您使用SQL语句或Script命令行工具创建SQL脚本。可能您需要先调整脚本,然后才能针对 MySQL 数据库运行它。