XDAG同步节点部署

系统环境要求

JDK : v17
Maven : v3.9.1-v3.9.5
MySQL : v8.0系列

1、MySQL8.0安装

1)docker-compose安装详情
MySQL安装
2)配置数据库账号密码及键表

# docker exec -it mysql8 /bin/bash
# root@0286a1fd60e6:/# mysql -uroot -p
Enter password:
mysql> CREATE DATABASE xdagj;
Query OK, 0 rows affected (0.00 sec)
mysql> use xdagj;
mysql> CREATE TABLE `t_transaction_history` (`fid` int(11) NOT NULL AUTO_INCREMENT,`faddress` varchar(64) NOT NULL,`faddresstype` tinyint(4) NOT NULL,`fhash` varchar(64) NOT NULL,`famount` decimal(20,9) unsigned zerofill NOT NULL,`ftype` tinyint(4) NOT NULL,`fremark` varchar(64) DEFAULT NULL,`ftime` datetime(3) NOT NULL,PRIMARY KEY (`fid`),UNIQUE KEY `id_UNIQUE` (`fid`),KEY `faddress_index` (`faddress`)
) ENGINE=InnoDB AUTO_INCREMENT=17392050 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
Query OK, 0 rows affected (0.00 sec)
mysql> CREATE USER 'xdagj'@'%' IDENTIFIED BY 'xdagj';
Query OK, 0 rows affected (0.00 sec)
mysql> GRANT ALL PRIVILEGES ON *.* TO 'xdagj'@'%' WITH GRANT OPTION;
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

2、准备java编译环境,编译代码

1)安装jdk17

# apt-get install openjdk-17-jdk

2)安装过maven3.9.5

# wget https://dlcdn.apache.org/maven/maven-3/3.9.5/binaries/apache-maven-3.9.5-bin.tar.gz
# tar -xf apache-maven-3.9.5-bin.tar.gz -C /usr/local/
# vim /etc/profile
`
MAVEN_HOME=/usr/local/apache-maven-3.9.5/bin/
export PATH=$PATH:$MAVEN_HOME
`
# source /etc/profile

3)拉取代码并编译代码

# git clone https://github.com/XDagger/xdagj.git
# cd xdagj
# mvn clean package -Dmaven.test.skip=true
# ls dist
xdag.bat  xdagj-linux.zip  xdagj-macos.zip  xdagj-windows.zip  xdag.sh
# mkdir bin
# unzip dist/xdagj-linux.zip -d bin/
# cd bin
ls
druid.properties  log4j2.xml  logs  mainnet  rpc_modules.conf  xdag-devnet.conf  xdagj-0.6.5-shaded.jar  xdag-mainnet.conf  xdag.sh  xdag-testnet.conf

3、下载数据快照

快照地址
在这里插入图片描述

# cd bin
# wget https://storage.xdagpool.com/snapshot-2722283-193b2380000.tar.gz
# mkdir -p mainnet/rocksdb/xdagdb/
# tar -xf snapshot-2722283-193b2380000.tar.gz -d mainnet/rocksdb/xdagdb/

4、编辑配置文件启动节点

编辑xdag-mainnet.conf文件

# cat xdag-mainnet.conf
# Admin Config
admin.telnet.ip = 127.0.0.1
admin.telnet.port = 6001
admin.telnet.password = root# Pool Config
pool.ip = 0.0.0.0
pool.port = 7001
pool.tag = XdagJ# Pool-Reward Config
pool.poolRation = 5
pool.rewardRation = 5
pool.fundRation = 5
pool.directRation = 5
pool.fundAddress = FQglVQtb60vQv2DOWEUL7yh3smtj7g1s# Node config
node.ip = 0.0.0.0
node.port = 8001
node.maxInboundConnectionsPerIp = 8
# 公共节点IP,要找供应商添加白名单
node.whiteIPs = ["152.32.219.239:8001"]
# 同步节点不挖矿,关闭出块
node.generate.block.enable = false # Node transaction history config
node.transaction.history.enable = true# Node libp2p Config
node.libp2p.port = 9001
node.libp2p.isbootnode = true
node.libp2p.privkey = 0x0802122074ca7d1380b2c407be6878669ebb5c7a2ee751bb18198f1a0f214bcb93b894b5
node.libp2p.bootnode = ["enr:-Iu4QPY6bYDC0PaafEwhgg_6yTcx0GAGbSARYqehJKEkyOmxX6SNZMyMMdkmDw9bAvYN9m2LrqIsPSd-bUqff0tsHYABgmlkgnY0gmlwhH8AAAGJc2VjcDI1NmsxoQJ2EWgMpl6PtyFKMbbOb82Ob-al9NeE3GYB3-K7n4yWwoN0Y3CCJxGDdWRwgicR"]# Node RPC Config
rpc.enabled = true
rpc.http.host = 0.0.0.0
rpc.http.port = 10001
rpc.ws.port = 10002# Miner Config
miner.globalMinerLimit = 8192
miner.globalMinerChannelLimit = 8192
miner.maxConnectPerIp = 256
miner.maxMinerPerAccount = 256# Randomx Config
randomx.flags.fullmem = false

编辑druid.properties文件

# cat druid.properties 
driverClassName=com.mysql.cj.jdbc.Driver
url=jdbc:mysql://localhost:3306/xdagj?autoReconnect=true&useUnicode=true&characterEncoding=utf-8&&serverTimezone=UTC
username=xdagj
password=xdagj
minIdle=5
initialSize=5
maxActive=10
maxWait=100
testOnBorrow=true
testOnReturn=true
testWhileIdle=true
validationQuery=select 1
validationQueryTimeout=1
timeBetweenEvictionRunsMillis=480000
ConnectionErrorRetryAttempts=3
NotFullTimeoutRetryCount=3
#removeAbandonedTimeoutMillis=480000
#removeAbandoned=true
numTestsPerEvictionRun=3
minEvictableIdleTimeMillis=480000
maxEvictableIdleTimeMillis=600000
keepAliveBetweenTimeMillis=540000

启动节点

sh xdag.sh --enablesnapshot true 2722283 193b2380000
enable snapshot:true
Create New Wallet...
EnterNewPassword:
ReEnterNewPassword:
HdWallet Initializing...
HdWallet Mnemonic: avcd hfbf host aegterg ajfgh lojfob aeogn aedg aegrg sefge jkne adomm
HdWallet Mnemonic Repeat:avcd hfbf host aegterg ajfgh lojfob aeogn aedg aegrg sefge jkne adomm quote
HdWallet Initialized Successfully!
New Address:2a3e4c487lkd2238a2e7a9ec33767852c9ohgfri
init snapshot...
init snapshotJ done
time:371582ms
Our balance: 0.000000000
All amount: 1219994175.999999023
telnetd is running on 127.0.0.1:6001
Nov 20, 2023 8:21:47 PM org.jline.builtins.telnet.PortListener run
INFO: Listening to Port 6,001 with a connectivity queue size of 10.

5、查询操作节点

:~# telnet 127.0.0.1 6001
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
Enter Admin password>**** (mainnet配置文件中有)
xdag> state
Connected to the main network. Synchronizing from low to high.
xdag> balance 
Balance: 0.000000000 XDAG
xdag> account
4rN1bDkkv3oXKF8PUpUZjVxi6wNdCTZ3T 0.000000000 XDAGxdag> xfer
Lost some param
xdag> net -l
/152.32.219.239:8001 2023-11-20 20:58:33 31424 in/16092 out
/152.32.219.239:34044 2023-11-20 20:59:26 76 in/3 out
xdag> mainblocks
---------------------------------------------------------------------------------------------------------
height        address                            time                      state     mined by            
---------------------------------------------------------------------------------------------------------
02724441   xUjl48zOvF/52Zb2L5VR0cMWkWg66XtD   2023-08-30 11:49:19.999   Main      HTTPS://XDAG.ORG EQUAL
02724440   zIUVbTK3mOcA2QAT6TX3TZ1uLkz/8jn8   2023-08-30 11:48:15.999   Main      HTTPS://XDAG.ORG SOLO
02724439   1oo0o4A5MW302xBvMwD6wQ95O8IwHaJh   2023-08-30 11:47:11.999   Main      https://equal.xdagmine.com
02724438   HSAFCKZD2Veb1tESbpC+8OnqQ1XRd8dC   2023-08-30 11:46:07.999   Main      HTTPS://XDAG.ORG SOLO
02724437   x25cLeypUR0+ZWcTJTHD9RYcqjfca1WX   2023-08-30 11:45:03.999   Main      HTTPS://XDAG.ORG SOLO 2
02724436   rTa41sp/0PKCEHq71X0mRrBv3jHaqejL   2023-08-30 11:43:59.999   Main      HTTPS://XDAG.ORG SOLO
02724435   oM8wBE3GDnk8SvyDacm+MNc3G2ZvDnwA   2023-08-30 11:42:55.999   Main      HTTPS://XDAG.ORG SOLO
02724434   4+tE8yaqNWLsnPjCDcR2zBn+GI+YU5MO   2023-08-30 11:41:51.999   Main      https://equal.xdagmine.com
02724433   XQypGeg0kw0o2N12i/qrqAMBVGnCM187   2023-08-30 11:40:47.999   Main      HTTPS://XDAG.ORG EQUAL 2
02724432   AoHJ26AHu7uZB/IO8KRhChkiimfEBom6   2023-08-30 11:39:43.999   Main      HTTPS://XDAG.ORG EQUAL
02724431   nRTHG0EAu0+PA8ebzKPmYG3r7330G/BN   2023-08-30 11:38:39.999   Main      HTTPS://XDAG.ORG SOLO
02724430   wP/n48EiAPgi6lVgZJPDJeWz8FKei8ds   2023-08-30 11:37:35.999   Main      HTTPS://XDAG.ORG SOLO 2
02724429   pvGiDjz1y3/+msNhvd+ItuOxz9ljZNwJ   2023-08-30 11:36:31.999   Main      HTTPS://XDAG.ORG SOLO 2
02724428   YQb2L97G2cfrw3fUFatI0bIVFBqUvgBb   2023-08-30 11:35:27.999   Main      HTTPS://XDAG.ORG EQUAL 2
02724427   0mYGOhNI9HoaQkSnzNqi1toIH5FIY6PD   2023-08-30 11:34:23.999   Main      HTTPS://XDAG.ORG EQUAL
02724426   htiEatRcljLQz+5TpkJom8wAWpDUluD4   2023-08-30 11:33:19.999   Main      HTTPS://XDAG.ORG EQUAL
02724425   +5C/PJnsgX4HPf+hArteuuapj9NYkzDD   2023-08-30 11:32:15.999   Main      HTTPS://XDAG.ORG EQUAL
02724424   CZGrJgrQz5DAUIcaOcFr/nbH93LGwQvs   2023-08-30 11:31:11.999   Main      HTTPS://XDAG.ORG EQUAL
02724423   0LD7tYPM/YFvn5bGZrHXb0pQCLWkjs/k   2023-08-30 11:30:07.999   Main      HTTPS://XDAG.ORG EQUAL
02724422   YLssHNicvfGB7smQSgJR9b99+lJHi86N   2023-08-30 11:29:03.999   Main      HTTPS://XDAG.ORG SOLO 2
xdag> state
Connected to the main network. Synchronizing from low to high.(没有同步完)
xdag> account
4rN1bDkkv3oXKF8PUpUZjVxi6wNdCTZ3T 20.000000000 XDAG
xdag> helpaccount     print first [SIZE] (20 by default) our addresses with their amountsaddress     address-  print extended info for the account corresponding to the address, page size 100balance     print balance of the address [ADDRESS] or total balance for all our addressesblock       print extended info for the block corresponding to the address or hash [A]disconnect  disconnect all connections or specified minersexit        exit from app/scripthelp        command helpkeygen      generate new private/public key pair and set it by defaultlastblocks  print latest [SIZE] (20 by default, max limit 100) main blocksmainblocks  print latest [SIZE] (20 by default, max limit 100) main blocksminedblocks print list of [SIZE] (20 by default) main blocks mined by current poolminers      for pool, print list of recent connected minersnet         run transport layer command, try 'net --help'oldbalance  print max balance we can transferstate       print the program statestats       print statistics for loaded and all known blocksterminate   terminate both daemon and this programttop        display and update sorted information about threadsxfer        transfer [AMOUNT] XDAG to the address [ADDRESS]xfertonew   transfer the old balance to new address
xdag> state
Synchronized with the main network. Normal operation.(同步完成)

curl命令

# 获取最新高度
curl http://127.0.0.1:10001/ -s -X POST -H "Content-Type: application/json" --data "{\"jsonrpc\":\"2.0\",\"method\":\"xdag_blockNumber\",\"params\":[],\"id\":1}"
{"jsonrpc":"2.0","id":1,"result":"2836571"}
# 获取钱包地址余额
curl http://127.0.0.1:10001/ -s -X POST -H "Content-Type: application/json" --data "{\"jsonrpc\":\"2.0\",\"method\":\"xdag_getBalance\",\"params\":[\"4rN1bDkkv3oXKF8PUpUZjVxi6wNdCTZ3T\"],\"id\":1}"
{"jsonrpc":"2.0","id":1,"result":"20.000000000"}
# curl判断是否同步完成
curl http://127.0.0.1:10001/ -s -X POST -H "Content-Type: application/json" --data "{\"jsonrpc\":\"2.0\",\"method\":\"xdag_syncing\",\"params\":[],\"id\":1}"
# 同步没完成
{"jsonrpc":"2.0","id":1,"result":{"currentBlock":null,"highestBlock":null,"isSyncDone":false}}
# 同步完成
{"jsonrpc":"2.0","id":1,"result":{"currentBlock":"2837021","highestBlock":"2837021","isSyncDone":true}}

更多文档详情

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/155926.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Echart】Echart设置label太长隐藏:

文章目录 第一种:竖排显示第二种:显示部分第三种:强制显示所有标签并旋转 第一种:竖排显示 xAxis: {type: category,data: res.data.data.sz.xAxis,axisLabel:{fontSize:12,formatter: function(value) {return value.split().joi…

线程池有几种创建方式?

程序员的公众号:源1024,获取更多资料,无加密无套路! 最近整理了一波电子书籍资料,包含《Effective Java中文版 第2版》《深入JAVA虚拟机》,《重构改善既有代码设计》,《MySQL高性能-第3版》&…

人员定位系统人员聚集风险监测预警功能为企业安全生产保驾护航!

危化企业生产区域由于装置设施开停工、设备检维修或其它原因,会导致在局部作业区域出现作业操作人员、指挥管理人员不定时、不定点的聚集情况,一旦发生泄漏中毒、火灾爆炸、高温高热物质喷溅等事故,人员聚集将会在一定程度上加重事故后果的严…

【测试开发】学习测试前的基础知识

文章目录 目录 前言 一、什么是软件测试 二、软件测试的发展史 三、软件测试和研发的区别 四、测试人员应该具备的能力 五、测试所需要知道的基本概念 1.需求 六、软件错误(BUG)的概念 前言 本篇文章主要讲解在学习测试前一些需要了解的知识。 一、什…

2023年【A特种设备相关管理(锅炉压力容器压力管道)】模拟考试题及A特种设备相关管理(锅炉压力容器压力管道)作业考试题库

题库来源:安全生产模拟考试一点通公众号小程序 A特种设备相关管理(锅炉压力容器压力管道)模拟考试题参考答案及A特种设备相关管理(锅炉压力容器压力管道)考试试题解析是安全生产模拟考试一点通题库老师及A特种设备相关…

【优秀毕设】基于vue+ssm+springboot的网上购物商城系统设计

摘 要 随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,网上商城购物系统当然也不能排除在外。网上商城购物系统是以实际运用为开发背景,运用软件工程原理和开发方…

物联网AI MicroPython学习之语法 PWM脉宽调制模块

学物联网,来万物简单IoT物联网!! PWM 介绍 模块功能: PWM脉宽调制驱动模块 接口说明 PWM - 构建PWM对象 函数原型:PWM(ch, freq, duty)参数说明: 参数类型必选参数?说明chobjectYPin对象例如&#xf…

直播间弹幕直播游戏开发教程

随着直播技术的不断发展,交互式弹幕直播游戏成为吸引用户参与的新兴方式。这种游戏融合了实时弹幕互动和直播视频,为观众和主播提供了更加丰富的互动体验。在这篇文章中,我们将探讨从概念到实现的步骤,帮助你打造一款引人入胜的交…

五年程序员兼职接单的肺腑之言

不知不觉我已经参加工作,当一个程序员五年了,从一个职场菜鸟逐渐变成老油条,个中辛酸只有自己知道。这五年做过各种兼职接单,踩过不少坑,今天就把我在程序员接单上的一些心得体会分享给大家,希望能对兼职接…

Redis--字符串

基础概念 字符串、数字,都会转化为字符串来进行存储 以二进制的方式存储在内存中 key的命名规范 key不宜过长,消耗内存,且在数据查找的这类键值的计算成本高(通过hash计算来查找)不宜过短,可读性查值一…

设计模式-命令模式-笔记

“行为变化”模式 在组件的构建过程中,组件行为的变化经常导致组件本身剧烈的变化。“行为变化”模式组件的行为和组件本身进行解耦,从而支持组件行为的变化,实现两者之间的松耦合。 经典模式:Command、Visitor 动机&#xff0…

C# - Opencv应用(2) 之矩阵Mat使用[矩阵创建、图像显示、像素读取与赋值]

C# - Opencv应用(2) 之矩阵Mat使用[矩阵创建、图像显示、像素读取与赋值] 矩阵创建图像显示与保存像素读取与赋值新建sample02项目,配置opencv4相关包,新建.cs进行测试 1.矩阵创建 //创建空白矩阵 var dst new Mat()//创建并赋…

Continuity” of stochastic integral wrt Brownian motion

See https://imathworks.com/math/math-continuity-of-stochastic-integral-wrt-brownian-motion/

【开源】基于Vue.js的教学过程管理系统

项目编号: S 054 ,文末获取源码。 \color{red}{项目编号:S054,文末获取源码。} 项目编号:S054,文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 教师端2.2 学生端2.3 微信小程序端2…

基于Vue+SpringBoot的桃花峪滑雪场租赁系统

项目编号: S 036 ,文末获取源码。 \color{red}{项目编号:S036,文末获取源码。} 项目编号:S036,文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 游客服务2.2 雪场管理 三、数据库设…

什么是Jmeter ?Jmeter使用的原理步骤是什么?

1.1 什么是 JMeter Apache JMeter 是 Apache 组织开发的基于 Java 的压力测试工具。用于对软件做压力测试,它最初被设计用于 Web 应用测试,但后来扩展到其他测试领域。 它可以用于测试静态和动态资源,例如静态文件、Java 小服务程序、CGI 脚本…

力扣1038. 从二叉搜索树到更大和树(java,树的中序遍历解法)

Problem: 1038. 从二叉搜索树到更大和树 文章目录 题目描述思路解题方法复杂度Code 题目描述 给定一个二叉搜索树 root (BST),请将它的每个节点的值替换成树中大于或者等于该节点值的所有节点值之和。 提醒一下, 二叉搜索树 满足下列约束条件&#xff…

媲美有线操作,支持4KHz响应和无线充电的游戏鼠标,雷柏VT3S上手

对于无线鼠标来说,操作延迟和精度对游戏操作影响很大,常见的游戏鼠标至少都有1KHz的回报率,而雷柏今年已经出了很多支持4KHz回报的鼠标了,像是我现在用的这款VT3S游戏鼠标,就搭载了旗舰级的原相3395引擎,支…

fractional Brownian Motion driven stochastic integrals

See https://mathoverflow.net/questions/304366/fractional-brownian-motion-driven-stochastic-integrals

2023年G3锅炉水处理证考试题库及G3锅炉水处理试题解析

题库来源:安全生产模拟考试一点通公众号小程序 2023年G3锅炉水处理证考试题库及G3锅炉水处理试题解析是安全生产模拟考试一点通结合(安监局)特种作业人员操作证考试大纲和(质检局)特种设备作业人员上岗证考试大纲随机…