Live- und Testknoten gleichzeitig ausführen

Ich habe 4 Tage gebraucht, um meinen Knoten vollständig zu synchronisieren, aber er läuft endlich und ich kann Brieftaschen usw. erstellen.

Ich wollte mit einigen Transaktionen auf Testnet experimentieren, also muss ich entweder meine Konfiguration ändern oder eine separate Instanz erstellen.

Aber ich möchte meinen synchronisierten Live-Knoten nicht verlieren. Was ist also die beste Strategie, um zu Testnet zu wechseln, während ich immer noch zurück wechseln kann?

# [core]
datadir=/mnt/volume-nyc1-03/Bitcoin
dbcache=2000
txindex=1

# [rpc]
# Accept command line and JSON-RPC commands.
server=1
# Username for JSON-RPC connections
rpcuser=bitcoin
# Password for JSON-RPC connections
rpcpassword=sayblockchainonemoretime
rpcport=8332
rpcallowip=x.x.x.x/x (ip masked) 
# [wallet]
# Do not load the wallet and disable wallet RPC calls.
disablewallet=0

Antworten (2)

Sie können beide gleichzeitig ausführen:

$ bitcoind -daemon
$ bitcoind -testnet -daemon

Dann können Sie Befehle für beide ausgeben, indem Sie Folgendes verwenden:

$ bitcoin-cli <commmand>

oder

$ bitcoin-cli -testnet <command>

Die Blockchains werden ./bitcoin/blocksfür Mainnet und /bitcoin/testnet3/blocksTestnet gespeichert.

Update : Mit dem Update bitcoin.confin der Frage entfernen rpcport=8332, damit nicht versucht wird, denselben Port für Mainnet- und Testnet-RPC zu verwenden.

Update 2 : Mit der Version 0.17 ist es jetzt möglich, dass eine einzelne Konfigurationsdatei verschiedene Optionen für verschiedene Netzwerke festlegt in bitcoin.conf:

main.uacomment=bitcoin
test.uacomment=bitcoin-testnet
regtest.uacomment=regtest

Weitere Informationen finden Sie in den Versionshinweisen zu 0.17.0

$ bitcoin-cli getblockcount: 538439
$ bitcoin-cli -testnet getblockcount: 538439
sieht so aus, als würde es gegen die Hauptleitung gehen
hmm, ich sehe jetzt den testnet3-Ordner unter bitcoin ..
Hmm. könnte ein Problem mit Ihrem seinbitcoin.conf
Siehe dies in debug.log 2018-08-25 21:08:24 Verwendung von 16 MiB von 32/2 angefordert für den Skriptausführungscache, in der Lage, 524288 Elemente zu speichern 2018-08-25 21:08:24 Verwendung von 2 Threads für Skript Verifizierung 2018-08-25 21:08:24 Start des Scheduler-Threads 2018-08-25 21:08:24 Bindung von RPC an Adresse :: Port 8332 fehlgeschlagen. 2018-08-25 21:08:24 Bindung von RPC auf Adresse 0.0.0.0 Port 8332 fehlgeschlagen. 2018-08-25 21:08:24 Kann keinen Endpunkt für RPC-Server binden 2018-08-25 21:08:24 Fehler: HTTP-Server kann nicht gestartet werden. Einzelheiten finden Sie im Debug-Protokoll.
Möglicherweise möchten Sie die Daemons mit $bitcoin-cli stopund neu $bitcoin-cli -testnet stopstarten und dann erneut starten.
hmm hat das versucht, aber sehen Sie weiterhin, dass Binding RPC auf Adresse 0.0.0.0 Port 8332 fehlgeschlagen ist.
Benutzt etwas diesen Port?
Also habe ich testnet=1 in bitcoin.conf gesetzt, was zu funktionieren scheint, aber jetzt läuft der Hauptknoten nur noch, denke ich. Ich bin mir nicht sicher, ob ich beide gleichzeitig ausführen kann
Löschen Sie diese Zeile. Wenn Sie das Flag nur in die Befehlszeile einfügen, können Sie beide ausführen.
Danke! Gut zu wissen :) Aus irgendeinem Grund funktionierte ohne die Zeile testnet bei mir jedoch nicht.. Bekomme immer wieder diesen Fehler in debug.log
Funktioniert es immer noch nicht? Wäre hilfreich, bitcoin.conf zu posten

Führen Sie bitcoin.exe mit den Parametern conf und datadir aus und setzen Sie die Konfigurationsdatei auf testnet=1

Ich habe die Konfiguration gesehen und bin mir dieser Einstellungen bewusst. aber ich bin mir nicht sicher, wie ich sicherstellen kann, dass meine Live-Blockchain unberührt bleibt
Standardmäßig arbeiten die beiden Netzwerke in unterschiedlichen Verzeichnissen.