跳到主要内容 跳到补充内容

将 H2 数据库从 2.x 版本升级到 2.y 版本

为解决 CVE 问题,H2 数据库驱动被升级到 2.2.224 版本。由旧版本驱动构建的数据库与 2.2.224 版本不兼容。要升级数据库,您需要使用旧的 H2 驱动备份数据库,并用新驱动恢复此备份。

步骤

  1. 使用 H2 数据库备份 Talend Administration Center:复制到
    /<tomcat_path>/webapps/org.talend.administrator
    备份目录:<backup_directory_path>
  2. 解压缩数据库驱动程序 JAR:
    • 旧的 (例如,h2.2.x.jar)。
    • 新的 (h2-2.2.224.jar)。
  3. 打开一个终端至
    <backup_directory_path>/org.talend.administrator/WEB-INF/lib 
    用旧版驱动输入后续命令:java -jar h2-2.x.jar
    这会自动启动 H2 控制台,地址 http://localhost:8082/
  4. 提供旧数据库文件位置:
    jdbc:h2:/path/to/backup_dir/org.talend.administrator/WEB-INF/database/talend_administrator;AUTO_SERVER=TRUE;lock_timeout=15000;DEFAULT_LOCK_TIMEOUT=15000;
    LOCK_MODE=0;MODE=LEGACY
    和登录旧数据库的凭据。
  5. 在控制台输入后续命令 SCRIPT TO '<backup_file_path>/backup.sql';
    单击 Run (运行)
    这会将旧数据库的内容导出至指定名称和位置的 SQL 文件。
  6. 关闭以前的 H2 服务器。
  7. 打开 <tomcat_path>/webapps/ 并删除 /<tomcat_path>/webapps/org.talend.administrator/database 中的所有文件。
  8. 要启动 http://localhost:8082/。 的 H2 浏览器控制台,打开 /<tomcat_path>/webapps/org.talend.administrator/WEB-INF/lib 内的终端并输入后续命令:
    java -cp h2*.jar org.h2.tools.Server -ifNotExists
  9. 提供您之前输入的数据库位置的路径,创建 backup.sql 文件:
    jdbc:h2:/<tomcat_path>//webapps/org.talend.administrator/WEB-INF/database/talend_administrator;AUTO_SERVER=TRUE;lock_timeout=15000;DEFAULT_LOCK_TIMEOUT=15000;
    LOCK_MODE=0;MODE=LEGACY
  10. 登录新数据库并使用后续命令从备份文件中导入数据。
    RUNSCRIPT FROM '<backup-file-path>/backup.sql';
  11. 启动 Talend Administration Center 控制台。

结果

Talend Administration Center 现在使用可兼容新的 2.2.224 版本驱动的新 H2 数据库。

本页面有帮助吗?

如果您发现此页面或其内容有任何问题 – 打字错误、遗漏步骤或技术错误 – 请告诉我们!