本文實現方案:在虛擬機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#/