创建回退状态数据库

您可以连接到 Oracle Database 以创建回退状态数据库。混合状态数据库模型使用回退状态数据库,如果对等点上的嵌入状态数据库存在任何问题,该数据库可以成为主状态数据库。

什么是回退状态数据库?

回退状态数据库在 Oracle Database 中维护状态数据库的辅助副本,而主状态数据库存储在嵌入式 Berkeley 数据库中。

状态数据库存储在每个对等点上,用于连接对等点的所有通道。Oracle Blockchain Platform 使用 Berkeley DB 作为对等节点上的嵌入式数据库。如果对等点崩溃或重新启动,则状态数据库可能会损坏。Oracle Blockchain Platform 可自动检测并重建分类账中损坏的状态数据库,但这可能需要大量时间,具体取决于分类账大小和块数。对等节点不可用于在重建过程中背书或提交事务处理。

混合状态数据库模型将外部 Oracle Database 添加为备用数据库。在正常操作中,对等方完成对 Berkeley 数据库状态数据库的同步块提交,以及对回退数据库的异步提交。如果嵌入式状态数据库失败,对等数据库将自动切换为使用 Oracle Database 进行同步提交,而 Berkeley DB 状态数据库将异步重建。重建过程完成后,对等端将切换回正常操作。

您必须使用 Oracle Autonomous Transaction Processing 作为回退数据库。

启用回退状态数据库

使用控制台提供数据库连接信息,然后选择要配置回退状态数据库的对等节点。

  1. 转到控制台,然后单击标题栏中的更多操作图标,其中还会显示实例的名称。
  2. 单击配置回退状态数据库
    此时将显示 Configure Fallback State Database 窗口。
  3. 指定 Oracle Autonomous Transaction Processing 的连接信息。
    1. 如果您已配置了富历史记录数据库,并且希望将相同的连接信息用于回退状态数据库,请单击使用富历史记录数据库配置,以使用与回退状态数据库相同的 Oracle Database 实例。否则,请指定用户名口令连接字符串,并根据需要上载 wallet 文件。有关连接字符串的更多信息,请参阅创建 Oracle Database Classic Cloud Service 连接字符串
    2. 要为网络中的每个对等点配置回退数据库,请单击为所有对等点启用
    3. 要为任何新添加的(缩放的)对等方配置回退数据库,请单击为新缩放的对等方启用
    4. 单击保存
      应用配置时,所有选定的对等设备都将重新启动。
  4. 要在特定对等点上启用或禁用回退状态数据库,请编辑对等点配置。
    1. 单击节点选项卡。
    2. 在节点表中,对于要修改的对等点,单击更多操作图标,然后单击编辑配置
    3. Fallback State Database 下,选择 ENABLEDISABLE ,然后单击 Submit

监视状态数据库

在对等节点上配置回退状态数据库后,可以监视状态数据库状态。

必须配置回退状态数据库以监视状态数据库状态。
  1. 转到控制台并单击节点选项卡。
  2. 在节点表中,单击要监视的对等节点的更多操作图标,然后单击监视状态数据库
    此时将显示一个表,其中包含有关状态数据库状态的以下信息。
    通道名
    对等端连接到的通道。
    活动数据库
    当前接受同步块提交的数据库,即主数据库 (Berkeley DB) 或回退数据库 (Oracle Database)。
    分类账块高度
    当前存储在分类账中的块数。
    主数据库的状态
    • SYNC_COMMITS:数据库在同步模式下正常运行。
    • ASYNC_RECOVERY:数据库正在以异步模式处理提交,并尝试追赶到分类账块高度。
    • ASYNC_ABORTED:当数据库以异步模式处理提交或异步块队列已满时,发生了持久错误。在任何一种情况下,都必须更正基础问题,然后重新启动对等点。
    主数据库块高度
    当前存储在主状态数据库中的块数。
    回退数据库状态
    • ASYNC_COMMITS:数据库在异步模式下作为备用数据库正常运行。
    • SYNC_COMMITS:数据库以同步模式运行,因为主数据库存在问题,或者因为主数据库块高度低于分类账块高度,而回退数据库分类账高度等于分类账块高度。
    • ASYNC_RECOVERY:数据库正在以异步模式处理提交,并尝试追赶到分类账块高度。
    • ASYNC_ABORTED:当数据库以异步模式处理提交或异步块队列已满时,发生了持久错误。在任何一种情况下,都必须更正基础问题,然后重新启动对等点。
    回退数据库块高度
    当前存储在 Oracle Database(回退数据库)中的块数。
    异步队列长度
    队列中等待当前异步数据库进行异步处理的块数。
    上次异步错误
    与异步数据库相关的最新错误,该错误可能包括连接或身份证明问题或异步队列或密钥大小的问题。