本文实现方案:在虚拟机ubuntu上运行单节点的EOS,把数据存储到mongodb中,而后经过本地的windows查看mongodb的数据。node
配置以下:linux
虚拟机: ubuntu 16.04 mongodb
EOS version: v1.2.5(本人源码有部分修改)数据库
ip:192.168.14.199ubuntu
mongo db: mongodb-linux-x86_64-3.6.3 windows
本地windows: win10api
mongo db客户端工具:RoboMongo工具
ip:192.168.14.7插件
一.下载与安装RoboMongocode
site: https://robomongo.org/download
二.修改配置文件
1.修改nodeos的配置文件config.ini
plugin = eosio::chain_api_plugin #plugin = eosio::history_api_plugin plugin = eosio::chain_plugin #plugin = eosio::history_plugin plugin = eosio::net_plugin plugin = eosio::net_api_plugin plugin = eosio::mongo_db_plugin mongodb-uri = mongodb://192.168.14.199:27017/eosmain
在这里把 history_api_plugin、history_plugin两个插件都屏蔽掉了,加上了mongo_db_plugin插件,另外增长 mongodb-uri 字段,最后的eosmain表示数据库名称,eos会自动建立这个数据库。
2.修改mongo db配置文件 mongod.conf
此文件默认在当前用户目录下opt/mongodb,主要修改ip、port以及数据存储的地址
systemLog: destination: file path: /home/hml/opt/mongodb/log/mongodb.log logAppend: true logRotate: reopen net: bindIp: 192.168.14.199,::27017 ipv6: true storage: dbPath: /home/hml/opt/mongodb/data
三.启动程序
1.启动mongo db
//运行 sudo ~/opt/mongodb/bin/mongod -f ~/opt/mongodb/mongod.conf //后台运行 sudo ~/opt/mongodb/bin/mongod -f ~/opt/mongodb/mongod.conf --fork
这里运行时会报错,说找不到/data/db这个目录 因而手动建立了这个目录,再次运行后没有报错
2.启动nodeos
nodeos --delete-all-blocks --mongodb-wipe
参数--delete-all-blocks表示清除旧数据,区块数据从新开始,--mongodb-wipe清空mongo db中的旧数据,成功后会开始正常出块;
四.使用robomongo访问
打开客户端后直接建立链接,只须要ip和端口,默认状况下密码是没有的,链接成功后,建立一些用户与交易后查看数据以下:
本文参考地址:
https://note.youdao.com/share/?id=084487aa8f2e8fdfc0a3c9ead6ad3144&type=note#/