区块链学习:Windows下搭建以太坊私有链环境
一:安装geth客户端
Windows要求必须是64位系统,从官方网站下载编译好的win64客户端,下载解压后只有一个Geth.exe问价,运行安装即可,下载地址如下:
https://github.com/ethereum/go-ethereum/releases/
安装后用cmd命令打开命令行,进入到你安装geth的目录下,输入geth –help 命令,如果输出一大堆关于geth的信息如下图则说明安装成功。当前geth命令只能在geth对应的目录下使用,如果想要在任何目录使用geth命令,只要把你安装geth的目录的路径加入到系统环境环境变量path中即可。
二:配置自己的创世文件:
配置自己的创世块是为了区分公有链,同一个网络中,创世块必须是一样的,否则无法联通。在刚刚Geth安装目录下放置初始化创世块文件名字为genesis.json
文件内容是:
{
"nonce":"0x0000000000000042",
"mixhash":"0x0000000000000000000000000000000000000000000000000000000000000000",
"difficulty": "0x4000",
"alloc": {},
"coinbase":"0x0000000000000000000000000000000000000000",
"timestamp": "0x00",
"parentHash":"0x0000000000000000000000000000000000000000000000000000000000000000",
"extraData": "PICC GenesisBlock",
"gasLimit":"0xffffffff"
}
三:启动私有节点
以后关闭后在此启动也用此方法
进入安装Geth的目录,前提已经放置配置好的genesis.json文件,执行如下命令:
geth --datadir "%cd%\chain" initgenesis.json
创建数据存放地址并初始化创世块
Geth --identity "PICCetherum" –rpc--rpccorsdomain "*" --datadir "%cd%\chain"--port"30303" --rpcapi"db,eth,net,web3" --networkid 95518 console
当看到如下时候说明已经启动成功。
启动了节点后,就进入了geth命令行模式,输入personal.newAccount() 根据提示输入密码就会给你新建了一个账户。
(打开geth控制台的命令:geth -datadir "%cd%\chain" console(在你 geth的目录下进行))
四:下载安装图形化钱包:
下载地址:https://github.com/ethereum/mist/releases/
找到Ethereum-Wallet-win64-xxx.zip 下载安装即可。按照上述步骤进行之后(启动节点的命令行不要关闭)
的前提下,运行这个钱包,运行Ethereum-Wallet.exe,即启动成功,如果区块链正常的话,会在右上角显示“PRIVATE-NET”,点击“LAUNCH APPLICATION”进入图形界面即可。
五:连接其他节点:
首先要知道自己的节点信息,在Geth命令行界面下输入命令,注意大小写
admin.nodeInfo
系统会显示
enode:"enode://1e3c1727cd3bee9f25edeb5dbb3b880e03e41f8eec99566557f3ee0422734a8fcad17c161aa93d61bdbfb28ed152c143c7eb501db58bc63502a104a84b62d742@0.0.0.0:30303“
其中
enode://1e3c1727cd3bee9f25edeb5dbb3b880e03e41f8eec99566557f3ee0422734a8fcad17c161aa93d61bdbfb28ed152c143c7eb501db58bc63502a104a84b62d742@0.0.0.0:30303
就是自己节点的信息,注意要把”0.0.0.0”换成你自己的IP。将这个信息发送给其他节点,在其他节点的命令行中输入:
admin.addPeer(‘enode://1e3c1727cd3bee9f25edeb5dbb3b880e03e41f8eec99566557f3ee0422734a8fcad17c161aa93d61bdbfb28ed152c143c7eb501db58bc63502a104a84b62d742@192.168.1.101:30303’)
如果添加成功,输入admin.peers会显示出新添加的节点。
六:
开始挖矿的命令:
miner.start()
结束挖矿:
Miner.stop()
注:geth的一些操作命令都要在geth命令行模式中进行,即启动节点之后。
区块链学习:Windows下搭建以太坊私有链环境的更多相关文章
- 转:使用 Go-Ethereum 1.7.2搭建以太坊私有链
使用 Go-Ethereum 1.7.2搭建以太坊私有链 目录 [toc] 1.什么是Ethereum(以太坊) 以太坊(Ethereum)并不是一个机构,而是一款能够在区块链上实现智能合约.开源的底 ...
- Mac环境搭建以太坊私有链
原文地址: 石匠的blog 为了测试以太坊智能合约,最方便的是在本地搭建一个以太坊私有链.在mac上搭建环境主要需要以下步骤. geth安装 geth是go-ethereum的简写,是一个用go语言编 ...
- 使用 Go-Ethereum 1.7.2搭建以太坊私有链
目录 [toc] 1.什么是Ethereum(以太坊) 以太坊(Ethereum)并不是一个机构,而是一款能够在区块链上实现智能合约.开源的底层系统,以太坊从诞生到2017年5月,短短3年半时间,全球 ...
- 区块链--Ubuntu上搭建以太坊私有链
1.搭建私链所需环境 操作系统:ubuntu16.04,开虚拟机的话要至少4G,否则会影响测试挖矿时的速度 软件: geth客户端 Mist和Ethereum Wallet:https://githu ...
- 区块链入门(2):搭建以太坊私有链(private network of ethereum),以及挖矿的操作..
在做一些测试工作的时候, 为了方便控制以及更快的进入真正的测试工作,可能需要搭建一个私有的以太坊网络. 而以太坊节点之间能够互相链接需要满足1)相同的协议版本2)相同的networkid,所以搭建私有 ...
- docker 搭建以太坊私有链搭建
最近区块链,火得不行,身边也有朋友准备玩这个,说是搭了一个星期,没有把环境搭建起来,叫我帮忙看看环境怎么搭建 于是我找到了官方的地址 https://github.com/ethereum/go-et ...
- Mac搭建以太坊私有链
记录过程与问题 一.安装 以go版本的ethereum进行安装 brew tap ethereum/ethereum brew install ethereum # 如果希望基于ethereum的de ...
- CentOS7搭建以太坊私有链
1. 环境准备:Win10 64位安装 VM VirtualBox,操作系统版本: CentOS-7-x86_64-Everything-1611.iso(7.71G). 切换root账号,方便安装程 ...
- ubuntu系统搭建以太坊私有链
1.安装curl.git apt-get update apt-get install git apt-get install curl 2.安装go curl -O https://storage. ...
随机推荐
- fedora、centos、rhel安装Adobe Flash Player 28
切换到root用户 添加Adobe Repository Adobe Repository 32-bit x86 rpm -ivh http://linuxdownload.adobe.com/ado ...
- 第二次SDN上机作业
SDN第二次作业 1.安装floodlight fatter树在floodlight上的连接显示 2.生成拓扑并连接控制器floodlight,利用控制器floodlight查看图形拓扑 floodl ...
- BZOJ 1113 海报 单调栈
题目链接: https://www.lydsy.com/JudgeOnline/problem.php?id=1113 题目大意: N个矩形,排成一排. 现在希望用尽量少的矩形海报Cover住它们. ...
- tcp/ip 数据进入协议栈时的封装及分用过程图
- 【洛谷】【单调栈】P4333 [COI2007] Patrik
--接上一篇题解,[洛谷][单调栈]P1823音乐会的等待 关于题目大意在上一篇题解里已经说清楚了,这里不再多阐述 想看题目->戳这里 [算法分析:] 在对元素a进行判断时,如果它与栈顶元素相等 ...
- Git branch -r 无法获取远程分支,ui可以看见分支但是git 命令无法查看解决方案
zhc@hongchangfirst$ git checkout -b hongchangfirst origin/hongchangfirst 出现: fatal: Cannot update pa ...
- day29
今日内容: 异常处理 元类介绍 元类(通过元类中的__init__方法,改变实例化获得的类) 元类(通过元类中的__call__方法,改变实例化获得的类实例化出来的对象) 1.异常处理: 什么是异常处 ...
- php中经常使用的string函数
strpos() ---返回字符串在另一字符串中首次出现的位置 strrpos() ---查找字符串在另一字符串中最后出现的位置 strchr() === strstr() ---找到字符 ...
- Docker安装Python3.5
方法一.通过 Dockerfile 构建 创建Dockerfile 首先,创建目录python,用于存放后面的相关东西. mkdir -p ~/python ~/python/myapp myapp目 ...
- MariaDB数据库性能优化
1. 硬件优化 1.1 内存(Memory) 内存是最重要的因素,因为它允许您调整服务器系统变量.更多的内存意味着可以将更大的密钥和表缓存存储在内存中,从而减少磁盘访问速度,降低一个数量级. 如果未将 ...