If you are looking to run a node of electrum server it's much faster to import an existing dataset than to index the blockchain with leveldb yourself. Creating a new UTXO leveldb with a transaction history limit of 10k per address takes over a week in /dev/shm
You can use the archival server to quickly download a leveldb database, where the indexing work has already been done for you. A dataset with limit 100 is the default setting. A dataset with a history limit of 10k per address can pretty much be considered to be what used to be known as a "full" server in Electrum.
You can find the latest archives here:Main site: http://foundry.electrum.org/leveldb-dump/ (rsync recommended see below)
Here's a short codelisting:
You can also use rsync to sync to the latest database built with a proper root hash.
wget [URL from leveldb-dump dir] wget http://foundry.electrum.org/leveldb-dump/md5sums.txt md5sum [downloaded filename] grep [md5sum result] md5sums.txt # if it returns empty the sums don't match and your dl might be corrupted! tar xfz [filename] -C 'yourpath' # Then edit your electrum-server.conf to include: backend = leveldb [leveldb] path = /yourpath/[database-name] pruning_limit = [Limit from above 100, 1000 or 10000]
/usr/bin/rsync -avp --delete foundry.electrum.org::electrum-leveldb-utxo-10000/ /yourpath/[database-name]
Please note: The databases are built on leveldb 1.15 and file extensions are now the regular .ldb (starting 15th of Jul 2015)
Please use a (lib)leveldb version of at least 1.9.0 (Jan 2013). For Debian Wheezy you can get a recent version from wheezy backports.
If you're running leveldb below version 1.13 you need to rename file extensions from .ldb to .sst!
#rename example for old versions of leveldb - see text above cd /yourpath/[database-name] rename 's/\.ldb$/\.sst/' addr/*.ldb rename 's/\.ldb$/\.sst/' hist/*.ldb rename 's/\.ldb$/\.sst/' undo/*.ldb rename 's/\.ldb$/\.sst/' utxo/*.ldb