Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

569 Commits
 
 
 
 
 
 
 
 

Repository files navigation

About BSC Snapshots

Currently, there are 3 sources of BSC snapshot could be used, if you are unclear about their differences, you may refer Clarification of the snapshots first, to decide which snapshot suit you the most.

Source-1: Legacy Full Node

Usage: usage/legacyfullnode_usage.md

Currently, snapshots are provided as block history data divided by year. Each list includes world states, historical block files, URL, MD5, file size. Users can use the provided tools to quickly download.

The Pruned Snapshot is better for internal/private nodes, it only keeps the latest 9w historical blocks and requires BSC client >=v1.5.5.

mainnet(monthly update)

Snapshot Type Snapshot File Total Size Remark
Full Snapshot mainnet-geth-pbss-20260805 ~6.6TB BSC >= v1.7.2
Pruned Snapshot mainnet-geth-pbss-20260805-pruneancient ~1.7TB BSC >= v1.7.2

testnet(update every 4 months)

Snapshot Type Snapshot File Total Size Remark
Full Snapshot testnet-geth-pbss-20260407 ~440GB BSC >= v1.7.2
Pruned Snapshot testnet-geth-pbss-20260407-pruneancient ~180GB BSC >= v1.7.2

Download

You can download the mainnet or testnet files separately in the list and unzip them in a same directory. Or you can use the following script:

# install aria2 on your os
yum install aria2
wget https://raw.githubusercontent.com/bnb-chain/bsc-snapshots/main/dist/fetch-snapshot.sh

Parameters:

  • -d download, -e extract, -c verify MD5 checksum, -p use pruned snapshot
  • -D <dir> directory to store downloaded archives
  • -E <dir> extraction target, should be the node's --datadir (e.g. /data/bsc), files will be extracted to <dir>/geth/chaindata/...
  • --auto-delete delete each archive immediately after extraction to save disk space
  • -p auto-appends -pruneancient to the snapshot name, do NOT use with a name that already has the suffix

Quick start (download, verify, extract, auto-delete in one step):

# full snapshot (~6.6TB, needs at least 8TB free, or 7TB with --auto-delete)
bash fetch-snapshot.sh -d -e -c --auto-delete -D /data/snapshot -E /data/bsc mainnet-geth-pbss-20260805

# pruned snapshot (~1.7TB, needs at least 2TB free with --auto-delete)
bash fetch-snapshot.sh -d -e -c -p --auto-delete -D /data/snapshot -E /data/bsc mainnet-geth-pbss-20260805

After extraction, files will be at /data/bsc/geth/chaindata/..., start geth with --datadir /data/bsc.

Step by step (download first, extract later):

# step 1: download & checksum
bash fetch-snapshot.sh -d -c -D /data/snapshot mainnet-geth-pbss-20260805

# step 2: extract to datadir
bash fetch-snapshot.sh -e -D /data/snapshot -E /data/bsc mainnet-geth-pbss-20260805

You can remove the -c option to skip MD5 checking. Run bash fetch-snapshot.sh --help for all options.

Please keep fetch-snapshot.sh the latest version.

Previous snapshot

Source-2: Pruned FullNode(~900GB) & FastNode(~300GB) By 48Club

Usage: https://github.com/BNB48Club/bsc-snapshots

Special thanks to BNB48Club on contributing another dump of snapshot.

Source-3: Erigon Mainnet Archive Node(~5TB)

Usage: usage/erigon3_archivenode_usage.md, Erigon 3 release: v1.3.10

Endpoints: erigon_51600000

Source-4: Reth BSC Snapshots

Usage: reth-bsc snapshot usage

Snapshots (Monthly Update)

** Archive MDBX currently has block height at around 20260403. An updated snapshot will be released once we have the synced version
** Archive rocksDb is small as TransactionHashNumbers, AccountsHistory, StoragesHistory are currently empty. They will be rebuilt during stage sync

Type Network File Size Special Parameters
Archive MDBX BSC-MainNet 20260729_mainnet_reth_mdbx_static_files_archive_node_v2.tar.zst
20260729_mainnet_reth_mdbx_db_archive_node_v2.tar.zst
20260729_mainnet_reth_mdbx_rocksdb_archive_node_v2
4.53 TiB
269 GB
97kB**
--db.max-size=12TB
--db.page-size=8KB
Archive MDBX BSC-TestNet 20260804_testnet_reth_mdbx_archive_node_v2.tar.zst 428.54 GiB -
Full MDBX BSC-TestNet 20260802_testnet_reth_mdbx_full_node_v2.tar.zst 278.98 GiB -
Full MDBX BSC-MainNet 20260802_mainnet_reth_mdbx_full_node_v2.tar.zst 3.15 TiB -

FAQ

Why split snapshot into multiple files?

As the node snapshot of bsc becomes larger and larger, backup, upload and download will become increasingly unmaintainable, and it will occupy more disk space and take up more upload and download time.

At the same time, in order to support the history expiry and state expiry of bsc later, it is planned to split the node snapshot according to historical data and active data, and the following advantages can be obtained:

  1. When updating the snapshot, only the changed part can be updated to reduce the difficulty of operation and maintenance;
  2. Support annual backup of historical data, which also helps with the subsequent historical data pruning;
  3. Support archiving multiple snapshot versions, avoiding wasting disk space;
  4. Support downloading and decompressing a single part immediately, and snapshot download and decompression can be completed on a smaller disk;

About

No description, website, or topics provided.

Resources

Stars

278 stars

Watchers

48 watching

Forks

Releases

Packages

Contributors

Languages