Ich lese „Mastering Bitcoin“ von Andreas und habe diese Erklärung zur „txindex-Option“ gefunden.
Transaktionsdatenbankindex und txindex-Option
Standardmäßig erstellt Bitcoin Core eine Datenbank, die nur die Transaktionen enthält, die sich auf die Brieftasche des Benutzers beziehen. Wenn Sie mit Befehlen wie gettransaction auf jede Transaktion zugreifen möchten, müssen Sie Bitcoin Core so konfigurieren, dass ein vollständiger Transaktionsindex erstellt wird, was mit der Option txindex erreicht werden kann. Setzen Sie txindex=1 in der Bitcoin Core-Konfigurationsdatei
Ich bin mir nicht sicher, in welchen Situationen ich die Option aktivieren sollte. Nach meinem Verständnis kann ich festlegen, txindex=0
ob ich bitcoind
Bitcoin nur als Übertragungstool verwende, damit ich Daten und Zeit sparen kann, um die Blockchain-Daten zu synchronisieren. Andernfalls, wenn ich beabsichtige, eine Blockexplore-Site wie Blockchain.info zu erstellen , muss ich festlegen txindex=1
.
Ist mein Verständnis davon richtig?
Wenn Sie Bitcoin Core nur für Ihren persönlichen Gebrauch verwenden, benötigen Sie die -txindex=1
Option wahrscheinlich nicht. Wenn Sie jedoch Bitcoin Core für die Entwicklung oder Blockchain-Analyse irgendeiner Art verwenden, müssen Sie festlegen -txindex=1
, dass Transaktionsdaten für jede Transaktion in der Blockchain abgerufen werden können.
Der Nachteil ist nur, dass das Führen eines Index etwas langsamer ist, Ihnen aber Folgendes ermöglicht:
bitcoin-cli getrawtransaction aec2729f5e46750b310b6feadcf853098aa86df74f93322a701c29cd68b22568
(wo aec2729f5e46750b310b6feadcf853098aa86df74f93322a701c29cd68b22568
ist die ID einer Transaktion, die Ihre Brieftasche überhaupt nicht betrifft).
Auch wenn Sie Ihren Client eine Weile ausgeführt haben, aber noch keine txindex=1
Einstellung vorgenommen haben, kann es einige Stunden dauern, den Index zu erstellen. Wenn Sie neu erstellen möchten, starten Sie mit der -reindex
Option.
Standardmäßig -txindex=0
verwaltet Bitcoin Core außer diesen keine Daten auf Transaktionsebene
Wenn „txindex“ auf „true“ (1) gesetzt ist, verwaltet Bitcoin Core einen Index aller Transaktionen, die jemals stattgefunden haben, den Sie mit der Remote Procedure Call (RPC)-Methode getrawtransaction
oder dem RESTful-API-Aufruf get-tx abfragen können .
Mehrere beliebte Wallet- und „Block Explorer“-Programme erfordern -txindex=1
. Beachten Sie, dass txindex
das Verhalten der Peer-to-Peer-Schnittstelle von Bitcoin nicht geändert wird.
Außerdem war früher txindex=1 erforderlich, wenn Sie LND (Lightning Network Daemon) verwenden wollten. Siehe https://github.com/lightningnetwork/lnd/pull/751
Zusätzlich zu den anderen Antworten txindex=1
ist erforderlich, wenn Sie Ihre Wallet mit Counterparty verwenden möchten.
Siehe Installationsanweisungen unter https://github.com/CounterpartyXCP/counterparty-lib
Zone
Steve Hibbert
Morsecoder
Steve Hibbert