日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

鏈上數據導出到數據庫

本示例介紹如何將區塊鏈上的數據導出至數據庫中。您可使用示例SQL在數據庫中創建中間表write_set,業務表taskmgr,以及trigger(負責將中間表的記錄轉換并寫入業務表)。當區塊鏈上發生交易時,您從中間表中可查詢鏈上原始的交易寫入集合,從業務表中查詢最終信息。

前置條件

  1. 您需要先在區塊鏈實例中安裝云服務集成。

  2. 下載云服務集成示例代碼

  3. 擁有一個公網可連接的數據庫實例(本示例以 RDS for MySQL 為例, 版本 >= 5.6)。

  4. 本地安裝 nodev8 環境(>=8.17.0)。

操作步驟

  1. 連接到數據庫實例,創建相關的庫和表:

    1. 進入 DMS 控制臺,登錄數據庫實例;

    2. 在上方菜單欄選擇 “SQL 窗口 -> SQL 窗口” 開啟一個新的 SQL 窗口。

    3. 將 SQL 文件 ./blockchain2db/taskmgr.sql 中的內容復制到 SQL 窗口中執行,確保語句全部執行成功;

  2. 按照發起示例交易的步驟1,在通道上安裝并實例化鏈碼 taskmgr。

  3. 在控制臺創建云服務集成數據庫觸發器:

    1. 選擇通道 taskmgr 及鏈碼 taskmgr

    2. 配置觸發器的事件類型為 Tx;

    3. 數據庫類型選擇 MySQL (這里以 MySQL 為例,可以根據實際需要選擇不同的數據庫類型);

    4. 根據幫助,依次填寫數據庫實例的地址、用戶名和密碼;

    5. 數據庫填寫 octopus;

    6. 表名填寫 write_set。

  4. 按照發起示例交易的后續步驟,在通道上發起示例交易。

  5. 之后您可以在數據庫 octopus 中查看導出的數據:

    1. 查看中間表中的原始交易寫入集合: SELECT * FROM write_setwrite_set

    2. 查看業務表中的審批任務詳情: SELECT * FROM taskmgrtaskmgr

發起示例交易

  1. 按照文檔部署鏈碼將示例鏈碼 taskmgr 部署到通道中。

  2. 進入 blockchain2sms 目錄,按照注釋修改 main.js 中的配置參數,填入REST API地址、Refresh Token、通道名和智能合約名稱。更多信息請參考文檔使用REST API。

  3. 執行 npm install 安裝依賴包,通過 node main.js 發起示例交易。

成功示例輸出

Data pushed to blockchain with transaction 701c7006f26aed8457273a00bbfcc8cea4d75eac958996e07837036ea7e2fdac
{ id: '701c7006f26aed8457273a00bbfcc8cea4d75eac958996e07837036ea7e2fdac',
  status: '200',
  events:
   [ { type: 'Contract',
       platform: 'Fabric',
       instance_id: 'csi-e2ehmfqasth-bcw7tzao2dzeo',
       network: '',
       id: '',
       name: 'event-create-task',
       content: 'eyJuY...TAz' }
Data pushed to blockchain with transaction 60a06a189415db587b49cbf91b46467bce1ea16490b19f6dfc8d520aa31240bc
{ id: '60a06a189415db587b49cbf91b46467bce1ea16490b19f6dfc8d520aa31240bc',
  status: '200',
  events:
   [ { type: 'Contract',
       platform: 'Fabric',
       instance_id: 'csi-e2ehmfqasth-bcw7tzao2dzeo',
       network: '',
       id: '',
       name: 'event-task-finished',
       content: 'eyJuY...p7In0=' } ],
  data: 'eyJu...In0=' }
Data pushed to blockchain with transaction 7810e0496a1c91a16102736b00a6f26da0baa42874a907fff26bff1b7eb3bf27
{ id: '7810e0496a1c91a16102736b00a6f26da0baa42874a907fff26bff1b7eb3bf27',
  status: '200',
  events: [],
  data: 'eyJu...nIn0=' }