импорт всех blkXXXXXX.dat

Я перенес свой процесс bitcoind на новый сервер, я сделал резервную копию своей папки .bitcoin (я использую Linux). Я бы очень хотел избежать повторной загрузки всего блокчейна.

Как правильно импортировать все файлы blk00000.dat? Достаточно ли переместить папку .bitcoin поверх новой?

РЕДАКТИРОВАТЬ: я вижу опцию Loadblock, но я полагаю, что должен запустить ее после перемещения файла наружу. Кто-нибудь может это подтвердить? Есть ли способ лучше?

К сожалению, я сам этого не знаю, но эти вопросы касаются схожих тем и могут помочь: 1 , 2 , 3 , 4
Вы пробовали --rescan ?
-rescan предназначен для поиска отсутствующих транзакций кошелька в существующей цепочке блоков. Это не влияет на сам блокчейн.

Ответы (4)

Я только что опубликовал это в ответ на другой вопрос, но опубликую снова, поскольку использование bootstrap.dat на сегодняшний день является лучшим способом запустить и запустить узел.

Если вы загружаете блокчейн с нуля, я настоятельно рекомендую использовать файл bootstrap.dat, который позволяет вашему компьютеру просто проверять блоки и импортировать их без необходимости загрузки в течение нескольких дней или даже недель подряд.

Основная проблема с загрузкой из сети заключается в том, что ваш клиент будет загружать только один блок за раз. Он начинается с блока № 1 и не будет пытаться загрузить что-либо, кроме блока № 2, после проверки блока № 1 и так далее. Как вы можете себе представить, с задержкой в ​​сети это может стать довольно болезненным процессом, как вы уже вытерпели.

Файл bootstrap.dat широко доступен на BitTorrent, торрент-файлы можно найти здесь: http://sourceforge.net/projects/bitcoin/files/Bitcoin/blockchain/

Прямая ссылка на торрент: http://sourceforge.net/projects/bitcoin/files/Bitcoin/blockchain/bootstrap.dat.torrent/download

Загрузка файла bootstrap.dat так же безопасна, как и загрузка блокчейна с пиров, но, поскольку все данные уже есть, единственная задержка между блоками — это обращение к жесткому диску и поиск следующего блока.

Вам просто нужно поместить bootstrap.dat в вашу папку %appdata%\Bitcoin (в linux/unix в вашу папку .bitcoin) файл будет переименован в bootstrap.dat.old, когда импорт данных будет завершен. Используя это, мне потребовалось всего 4 часа, чтобы догнать сеть, в отличие от 1-2 недель, которые у меня ушли на переформатирование на том же компьютере.

Технический нюанс: файл bootstrap.dat на самом деле является просто конкатенацией файлов blkXXXXX.dat. Вы можете буквально создать свой собственный bootstrap.dat, выполнив что-то вродеcat blk*.dat >~/bootstrap.dat

Скопируйте эти файлы в точную папку Bitcoin Data на вашем Ubuntu (~/.bitcoin/), а затем запустите клиент, чтобы загрузить последние доступные блоки. Для синхронизации с блокчейном запустите bitcoind командой -reindex bitcoind -reindex.

Если вы не меняете программу как таковую, вы сможете поместить блок-цепочку в ту же папку, что и оригинал. Мы делаем это довольно успешно в Windows. Мы также (для других валют) заархивировали блокчейн и загрузили его на клиент, у которого были проблемы с синхронизацией, чтобы решить проблему. Точно так же это должно работать и для Linux.

Я настоятельно рекомендую использовать bootstrap.dat или создать свой собственный, как описано здесь: bitcoin.stackexchange.com/questions/18568/…

В Windows я просто заменил каталоги, и все заработало.

Спасибо, под Linux, похоже, возникают некоторые проблемы. Я использую биткойнд, а не биткойн-qt, но я не думаю, что есть какие-то различия.
Это должно работать, если вы скопируете блоки и каталоги состояния цепи. Вам также следует скопировать wallet.dat, если вы хотите сохранить свой старый кошелек.