Я читаю «Освоение биткойнов», написанное Андреасом, и я нашел это объяснение о «опции txindex».
Индекс базы данных транзакций и параметр txindex
По умолчанию Bitcoin Core создает базу данных, содержащую только транзакции, связанные с кошельком пользователя. Если вы хотите получить доступ к любой транзакции с помощью таких команд, как gettransaction, вам необходимо настроить Bitcoin Core для создания полного индекса транзакций, что можно сделать с помощью параметра txindex. Установите txindex=1 в файле конфигурации Bitcoin Core.
Я не уверен, в каких ситуациях я должен включить эту опцию. Насколько я понимаю, я могу установить txindex=0
, использую ли я bitcoind
Биткойн просто как инструмент передачи, чтобы я мог сохранять данные и время для синхронизации данных блокчейна. В противном случае, если я намерен создать сайт исследования блоков, такой как Blockchain.info , мне нужно установить txindex=1
.
Правильно ли я понимаю это?
Если вы используете Bitcoin Core только для личного использования, вам, вероятно, не нужна эта -txindex=1
опция. Но если вы используете биткойн-ядро для разработки или какого-либо анализа цепочки блоков, вам нужно настроить -txindex=1
возможность получения данных транзакций для любой транзакции в цепочке блоков.
Компромисс заключается в том, что хранение индекса немного медленнее, но позволяет вам делать такие вещи, как:
bitcoin-cli getrawtransaction aec2729f5e46750b310b6feadcf853098aa86df74f93322a701c29cd68b22568
(где aec2729f5e46750b310b6feadcf853098aa86df74f93322a701c29cd68b22568
ID транзакции, которая никак не влияет на ваш кошелек).
Кроме того, если вы некоторое время запускали свой клиент, но не txindex=1
устанавливали его, создание индекса может занять несколько часов. Если вы хотите восстановить, запустите с -reindex
опцией.
По умолчанию -txindex=0
Bitcoin Core не хранит никаких данных на уровне транзакций, кроме тех, которые
Если для txindex установлено значение true (1), Bitcoin Core поддерживает индекс всех когда-либо произошедших транзакций, которые вы можете запросить с помощью метода удаленного вызова процедур (RPC) getrawtransaction
или вызова RESTful API get-tx .
Для нескольких популярных программ-кошельков и «обозревателя блоков» требуется расширение -txindex=1
. Обратите внимание, что txindex
это не меняет поведение однорангового интерфейса Биткойн.
Кроме того, txindex=1 раньше требовался, если вы хотели использовать LND (сетевой демон Lightning). См. https://github.com/lightningnetwork/lnd/pull/751 .
В дополнение к другим ответам txindex=1
требуется, если вы хотите использовать свой кошелек с Counterparty.
Инструкции по установке см. на странице https://github.com/CounterpartyXCP/counterparty-lib .
зона
Стив Хибберт
морсекодер
Стив Хибберт