Hyperledger fabric 如何访问默认hyperledger结构ca数据库

Hyperledger fabric 如何访问默认hyperledger结构ca数据库,hyperledger-fabric,Hyperledger Fabric,我有hyperledger结构“第一个网络”在7号窗口的Vagrant中启动并运行。我想查询fabric ca数据库的以下表: root@c6cc601b0360:/ca# sqlite3 fabric-ca-server.db 隶属关系 使用者 证书 请帮助我如何以及在哪里可以找到fabric ca数据库 谢谢。如果您使用的是1.1版,则可以使用fabric ca客户端关联列表和fabric ca客户端标识列表命令分别查看关联和用户表。fabric ca客户端的未来版本将提供列出证书的

我有hyperledger结构“第一个网络”在7号窗口的Vagrant中启动并运行。我想查询fabric ca数据库的以下表:

root@c6cc601b0360:/ca# sqlite3 fabric-ca-server.db 
  • 隶属关系
  • 使用者
  • 证书
请帮助我如何以及在哪里可以找到fabric ca数据库


谢谢。

如果您使用的是1.1版,则可以使用fabric ca客户端关联列表和fabric ca客户端标识列表命令分别查看关联和用户表。fabric ca客户端的未来版本将提供列出证书的功能


默认情况下,fabric ca server使用SQLITE,数据库文件的名称为fabric ca server.db,位于fabric ca server的主目录中。您可以使用sqlite3 fabric ca server.db命令进入sqlite shell,然后发出select*from users以列出例如用户表。

您需要登录docker容器来运行sqlite3 fabric-ca-server.db。遵循以下步骤:

$ docker ps
从响应中查找Fabric ca容器名称。然后发出以下命令:

 $ sudo docker exec -it <your-ca>  /bin/bash 
然后连接到数据库:

root@c6cc601b0360:/ca# sqlite3 fabric-ca-server.db 
运行测试查询:

root@c6cc601b0360:/ca# select * from users

这是非常简单的,只需安装和运行SQL客户端,对我来说;我安装了SQuirreL SQL client,您需要从以下位置安装SQLite的JDBC jar文件:

然后通过设置路径文件名连接到Hyperledger结构CA DB

然后连接到数据库,不使用username\password。如果保留默认值,您将看到请求的表,如下所示


希望我能帮上忙。

谢谢Keith,我在我的ubuntu环境中安装了sqlite3。我可以转到sqllite3 shell,但出现以下异常:错误:无法打开数据库“fabric ca server.db”:无法打开数据库filefabric server配置为使用mysql。当我尝试注册一个用户时,服务器响应为:未能获取用户::scode:404,代码:63,消息:未能获取用户:sql:结果集中没有行”。如何设置要查询的表??