zoukankan      html  css  js  c++  java
  • Fabric区块链浏览器启动报错Error : [ 'Explorer is closing due to channel name [%s] is already exist in DB'...]

    Fabric区块链浏览器启动报错

    [ERROR] Sync - Error : [ 'Channel name [%s] already exist in DB , Kindly re-run the DB scripts to proceed',
    '*****' ]
    Error : [ 'Explorer is closing due to channel name [%s] is already exist in DB'...]

    报错截图如下:

    在用docker部署区块链浏览器的时候,出现这个错误,网上查找也没有任何相关的博文,反复检查后发现不是配置文件的问题,按照报错信息很容易想到应该是Explorer-db里面存在了脏数据。那么解决思路就很显然了,登录数据库,删除这个channel。

    首先 docker ps 查询一下Explorer-db容器id

    docker ps
    

    第二步 进入容器

    docker exec -it 05b3a3471f6f bash
    

    第三步 登录数据库

    使用 psql -U postgres 这条语句登录数据库,不需要输入数据库密码,注意U是大写的。

    root@05b3a3471f6f:/# psql -U postgres
    

    第四步 查看数据库列表

    postgres-# l
                                       List of databases
          Name      |  Owner   | Encoding |  Collate   |   Ctype    |   Access privileges   
    ----------------+----------+----------+------------+------------+-----------------------
     fabricexplorer | hppoc    | UTF8     | en_US.utf8 | en_US.utf8 | 
     postgres       | postgres | UTF8     | en_US.utf8 | en_US.utf8 | 
     template0      | postgres | UTF8     | en_US.utf8 | en_US.utf8 | =c/postgres          +
                    |          |          |            |            | postgres=CTc/postgres
     template1      | postgres | UTF8     | en_US.utf8 | en_US.utf8 | =c/postgres          +
                    |          |          |            |            | postgres=CTc/postgres
    

    第五步 进入fabricexplorer 数据库里面

    postgres=# c fabricexplorer     #c表示选择数据库
    
    fabricexplorer=# d         #d表示展示数据库中的表信息
                       List of relations
     Schema |           Name            |   Type   | Owner 
    --------+---------------------------+----------+-------
     public | blocks                    | table    | hppoc
     public | blocks_id_seq             | sequence | hppoc
     public | chaincodes                | table    | hppoc
     public | chaincodes_id_seq         | sequence | hppoc
     public | channel                   | table    | hppoc
     public | channel_id_seq            | sequence | hppoc
     public | orderer                   | table    | hppoc
     public | orderer_id_seq            | sequence | hppoc
     public | peer                      | table    | hppoc
     public | peer_id_seq               | sequence | hppoc
     public | peer_ref_chaincode        | table    | hppoc
     public | peer_ref_chaincode_id_seq | sequence | hppoc
     public | peer_ref_channel          | table    | hppoc
     public | peer_ref_channel_id_seq   | sequence | hppoc
     public | transactions              | table    | hppoc
     public | transactions_id_seq       | sequence | hppoc
     public | users                     | table    | hppoc
     public | users_id_seq              | sequence | hppoc
     public | write_lock                | table    | hppoc
     public | write_lock_write_lock_seq | sequence | hppoc
    (20 rows)
    

    第六步 查询channel表信息

    这个表有点宽大家可以复制到文本里面看

    fabricexplorer=# select * from channel;
     id |    name     | blocks | trans |      createdt       |                       channel_genesis_hash                       | channel_hash | channel_config | channel_block | channel_tx | channel_version | network_name 
    ----+-------------+--------+-------+---------------------+------------------------------------------------------------------+--------------+----------------+---------------+------------+-----------------+--------------
      3 | fab2-chan1  |     24 |    24 | 2021-01-12 05:43:52 | 951658b50465610dcb655a520d41c7eae796a4c5ab5f46cd6356c7730769e988 |              |                |               |            |                 | tbs_default
      4 | testchannel |      2 |     2 | 2021-01-12 05:43:54 | 641f74e1cbc1e8fa274839d421987ffc578c504c28d891beeb3fa0d0c2b99637 |              |                |               |            |                 | tbs_default
      5 | c-zrpmx5    |      7 |     7 | 2021-01-14 02:41:21 | 9234dd1c82201d1737f92c3a3b0eda3df41002d2d8c9d2334fcdf0a612df4b39 |              |                |               |            |                 | tbs_default
      6 | c-3uaw9h    |      0 |     0 | 2021-01-14 03:20:57 | dd336656a8ec7c5ae785fa837e2fb13d422071051062c1f07dc27ab23c4b8a2c |              |                |               |            |                 | tbs_default
    (4 rows)
    

    第七步 删除报错的channe

    fabricexplorer=# delete from channel where name = 'testchannel';
    DELETE 1
    

    最后使用docker-compose重启区块链浏览器和区块链浏览器DB,你会发现它起来了。

    总结:

    这个错误网上都搜不到,可能是使用Fabric的人少,然后部署区块链浏览器的人就更少了,因此在这里记录一下,这个问题是之前部署过区块链服务和浏览器,环境没有清理干净,把区块链浏览器的DB所在的卷删除,然后重新部署区块链浏览器也能解决此问题,删掉后就启动成功了。

  • 相关阅读:
    使用snmp+mrtg监控CPU、流量、磁盘空间、内存
    ISO20000
    nginx入门篇----nginx服务器基础配置
    oracle数据库备份和还原
    oracle创建删除用户和表空间
    Centos 6.5安装oracle 11g
    nginx入门篇----安装、部署、升级
    vue 高德地图 地图初始化显示接口返回的多个经纬度
    vue element UI el-table 单元格中超出字省略号显示
    vue + element ui 打印
  • 原文地址:https://www.cnblogs.com/xwxz/p/14277840.html
Copyright © 2011-2022 走看看