monero/src/blockchain_utilities
redfish e1c7af35d4 cmake: transitive deps and remove deprecated LINK_*
Keep the immediate direct deps at the library that depends on them,
declare deps as PUBLIC so that targets that link against that library
get the library's deps as transitive deps.

Break dep cycle between blockchain_db <-> crytonote_core.
No code refactoring, just hide cycle from cmake so that
it doesn't complain (cycles are allowed only between
static libs, not shared libs).

This is in preparation for supproting BUILD_SHARED_LIBS cmake
built-in option for building internal libs as shared.
2016-09-18 02:56:26 -04:00
..
CMakeLists.txt cmake: transitive deps and remove deprecated LINK_* 2016-09-18 02:56:26 -04:00
README.md fix nigglies, as pointed out by moneromooo-monero 2016-09-03 22:36:09 +02:00
blockchain_export.cpp remove original Cryptonote blockchain_storage blockchain format 2016-08-28 21:27:32 +01:00
blockchain_import.cpp remove original Cryptonote blockchain_storage blockchain format 2016-08-28 21:27:32 +01:00
blockchain_utilities.h remove original Cryptonote blockchain_storage blockchain format 2016-08-28 21:27:32 +01:00
blocksdat_file.cpp remove original Cryptonote blockchain_storage blockchain format 2016-08-28 21:27:32 +01:00
blocksdat_file.h remove original Cryptonote blockchain_storage blockchain format 2016-08-28 21:27:32 +01:00
bootstrap_file.cpp remove original Cryptonote blockchain_storage blockchain format 2016-08-28 21:27:32 +01:00
bootstrap_file.h remove original Cryptonote blockchain_storage blockchain format 2016-08-28 21:27:32 +01:00
bootstrap_serialization.h updated copyright year 2015-12-31 08:39:56 +02:00
fake_core.h remove original Cryptonote blockchain_storage blockchain format 2016-08-28 21:27:32 +01:00

README.md

Monero Blockchain Utilities

Copyright (c) 2014-2016, The Monero Project

Introduction

The blockchain utilities allow one to import and export the blockchain.

Usage:

See also each utility's "--help" option.

Export an existing blockchain database

$ monero-blockchain-export

This loads the existing blockchain and exports it to $MONERO_DATA_DIR/export/blockchain.raw

Import the exported file

$ monero-blockchain-import

This imports blocks from $MONERO_DATA_DIR/export/blockchain.raw (exported using the monero-blockchain-export tool as described above) into the current database.

Defaults: --batch on, --batch size 20000, --verify on

Batch size refers to number of blocks and can be adjusted for performance based on available RAM.

Verification should only be turned off if importing from a trusted blockchain.

If you encounter an error like "resizing not supported in batch mode", you can just re-run the monero-blockchain-import command again, and it will restart from where it left off.

## use default settings to import blockchain.raw into database
$ monero-blockchain-import

## fast import with large batch size, database mode "fastest", verification off
$ monero-blockchain-import --batch-size 20000 --database lmdb#fastest --verify off

Import options

--input-file specifies input file path for importing

default: <data-dir>/export/blockchain.raw

--output-file specifies output file path to export to

default: <data-dir>/export/blockchain.raw

--block-stop stop at block number

--database <database type>

--database <database type>#<flag(s)>

database type: lmdb, memory

flags:

The flag after the # is interpreted as a composite mode/flag if there's only one (no comma separated arguments).

The composite mode represents multiple DB flags and support different database types:

safe, fast, fastest

Database-specific flags can be set instead.

LMDB flags (more than one may be specified):

nosync, nometasync, writemap, mapasync, nordahead

Examples:

$ monero-blockchain-import --database lmdb#fastest

$ monero-blockchain-import --database lmdb#nosync

$ monero-blockchain-import --database lmdb#nosync,nometasync