【问题标题】:Corda schema updateCorda 架构更新
【发布时间】:2019-11-04 18:39:17
【问题描述】:

我正在研究 Corda 数据库升级的选项,我对 Corda 开源描述的两种不同方法感到困惑 https://docs.corda.net/upgrading-cordapps.html#state-schema-versioning 与 Corda Entreprize:https://docs.corda.r3.com/database-management.html.

在 Corda Opensource 中,建议在 java 端创建多个映射模式。 在 Corda 企业版中提到了 liquibase 脚本用于修改数据库部分。

这两个选项是互斥的吗? IE。如果我使用 liquibase 更新架构,则无需添加多个映射架构? 如果我在 java 端使用 MappedSchemas,我不需要 liquibase 脚本?

【问题讨论】:

    标签: corda


    【解决方案1】:
    1. 仅在 Enterprise 中添加了 Liquibase 支持。要在 Corda Enterprise 中创建表,您需要添加支持自动数据库版本控制的 Liquibase 脚本。
    2. Corda 开源不支持 Liquibase。在 Corda 开源中,您将表定义为 Hibernate JPA 实体。该表作为 Hibernate 实体在数据库中创建。即使您在 Open Source 中添加 Liquibase 脚本,它也会被忽略,而是会创建 Hibernate 实体。
    3. 在 Corda Enterprise 中添加了 Liquibase,可帮助开发人员编写与数据库无关的脚本并帮助他们进行自动数据库迁移/版本控制。

    希望对您有所帮助。

    【讨论】:

    • 你好斯内哈!为什么我不能使用 Corda Opensource 手动运行 liquibase 脚本?
    • 你可以这样做。
    • 那么,你能回答我最初的问题吗?
    • 是的,据我所知,节点不会抱怨,因为数据库中已经创建了所需的表。
    • 嗨,斯内哈!最初的问题是这样的: >两个选项是否互斥? IE。如果我使用 liquibase 更新架构,则无需添加多个映射架构?如果我在 java 端使用 MappedSchemas,我不需要 liquibase 脚本?
    猜你喜欢
    • 2020-01-29
    • 1970-01-01
    • 2011-08-27
    • 2019-12-11
    • 2014-12-12
    • 2017-07-12
    • 1970-01-01
    • 1970-01-01
    • 2016-03-17
    相关资源
    最近更新 更多