以太坊执行miner.start返回null

标签: 以太坊miner挖矿
426人阅读 评论(1) 收藏 举报
分类:

问题场景

最近技术群中的朋友经常问到这样的问题,环境搭建已经搭建好,geth节点也成功启动,可为什么当执行miner.start()方法时却没有挖矿,返回null。

其实,不仅仅这些朋友,本人在启动最新节点进行挖矿的时候也遇到类似的问题。今天就带大家分析一下引起这个问题可能的几个原因。

是否设置miner地址

启动节点挖矿之前,需要查看当前节点中是否已经存在账号,可执行以下命令,查看当前节点下面是否有账号存在。

>personal.listAccounts

["0xc040cbd8a189d36f580fa83c2ffe3a26fb3e6a7e", "0xe0d1de6c934049fe4847b64becff5885bdb83fa4"]

当确认账户已经存在时,可以设置Etherbase。先查看以下coinbase账户:

>eth.coinbase

"0xc040cbd8a189d36f580fa83c2ffe3a26fb3e6a7e"

通过上面的命令,可以看到coinbase的账户地址,也就是上面查看地址查到第一个地址。

执行设置miner地址:

>miner.setEtherbase(eth.coinbase)
true

也可以执行执行以下命令进行设置:

>miner.setEtherbase(eth.accounts[0])
true

然后,可以再执行挖矿命令,查看是否问题是否解决。

节点误报

另外一种情况就是其实miner.start()命令已经执行成功,只不过节点返回null。如果是dev模式,可以使用eth.blockNumber查看一下区块高度是否增加。

节点版本问题

本人安装的geth-1.7.3版本的节点,在dev环境下验证发现,当执行miner.start()时,返回null。但其实miner已经执行,只不过它在等待你发送交易之后才会生成新的区块。也就是说执行了miner.start(),它一直在等待,这是发送一笔交易,再查看区块高度发现已经增加一块。

关注

获得更多资讯和技术,请关注微信公众号:程序新视界

目前本人承接以太坊技术相关项目(交易或钱包类),如有需要请联系QQ:541075754。

这里写图片描述

1
0

  相关文章推荐
查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:767250次
    • 积分:9260
    • 等级:
    • 排名:第2258名
    • 原创:201篇
    • 转载:25篇
    • 译文:8篇
    • 评论:266条
    Drools 7 视频教程
    个人微信公众号

    欢迎关注微信公众号,了解更多新动态
    这里写图片描述

    更多实战经验,请加入区块链技术小密圈
    这里写图片描述
    Drools规则引擎QQ交流群
    这里写图片描述
    以太坊研发技术交流群
    这里写图片描述
    博客专栏
    最新评论