Node Backup and Restore
Back up wallets first. Blocks, chainstate, indexes, peers, and mempool state are rebuildable. Wallet secret material is not. A fast node-data snapshot is useful for recovery time, but it is not a substitute for wallet backups.
This page is the backup and restore runbook. It is not the data layout reference; see Data Directory for file locations.
Backup priorities
| Priority | Data | Why it matters |
|---|---|---|
| 1 | Wallet backups and PQHD seed material | Required to recover funds. |
| 2 | tidecoin.conf and service config | Required to restore the same node role. |
| 3 | Operational metadata | Labels, service scripts, monitoring config, firewall rules. |
| 4 | Blocks and chainstate snapshots | Speeds recovery, but can be rebuilt. |
| 5 | Indexes | Speeds explorer/indexer recovery, but can be rebuilt. |
For wallet-capable nodes, document where backups are stored, who can access them, how they are encrypted, and how restore tests are performed.
Wallet backup
Use the wallet RPC or GUI backup action. Do not copy a live wallet database with
cp or a filesystem backup tool while the wallet is open.
tidecoin-cli -rpcwallet="main" backupwallet /secure/backups/main-wallet.datThe RPC locks and flushes wallet state before writing the backup. Store the result on reliable offline media and test restores periodically.
For multiple wallets, back up each loaded wallet:
tidecoin-cli listwallets
tidecoin-cli -rpcwallet="wallet-01" backupwallet /secure/backups/wallet-01.dat
tidecoin-cli -rpcwallet="wallet-02" backupwallet /secure/backups/wallet-02.datModern deterministic wallets can rederive keys from wallet seed material, but fresh backups still preserve metadata such as labels, transaction records, and wallet settings. Back up after significant operational changes.
PQHD material
Tidecoin PQHD wallets depend on PQHD seed material and wallet policy. Treat PQHD master seeds as signing secrets. Seed IDs are identifiers, not secrets, but they can reveal wallet structure.
Operational checklist:
| Item | Action |
|---|---|
| Wallet backup | Use backupwallet. |
| PQHD seed inventory | Record seed IDs from listpqhdseeds. |
| Scheme policy | Record receive and change scheme policy. |
| Offline seeds | Store offline with access controls and recovery procedure. |
| Restore test | Verify restored wallet can find expected addresses and balances after rescan. |
Node data snapshots
If recovery time matters, snapshot node data only when tidecoind is stopped or
the storage layer provides a crash-consistent snapshot with filesystem and
database consistency guarantees.
Good candidates:
| Path | Backup value |
|---|---|
blocks/ | Avoids redownloading historical blocks. |
chainstate/ | Avoids rebuilding the UTXO set if the snapshot is consistent. |
indexes/ | Avoids long index rebuilds. |
tidecoin.conf | Restores node role and ports. |
| service unit/container config | Restores deployment behavior. |
Do not snapshot blocks/, chainstate/, and indexes/ separately at different
times and expect them to be mutually consistent. If in doubt, restore block data
and rebuild chainstate or indexes.
Restore wallet
Restore a wallet backup with:
tidecoin-cli restorewallet "restored-wallet" /secure/backups/main-wallet.dat
tidecoin-cli -rpcwallet="restored-wallet" getwalletinfoThe restored wallet may need to rescan chain data. Rescan is faster when block filter indexes are available, but the wallet backup remains the source of truth for wallet recovery.
After restore:
- Confirm the wallet loads.
- Confirm expected addresses are derivable or visible.
- Confirm balance after rescan.
- Confirm PQHD seed inventory and policy.
- Move funds only after the restore environment is trusted.
Restore node data
For a full node-data restore:
- Stop
tidecoind. - Restore
tidecoin.confand service configuration. - Restore the network-specific data directory or selected
blocks/,chainstate/, andindexes/snapshot. - Restore wallets through
restorewalletor place wallet backups according to the documented wallet procedure. - Start the node.
- Check
getblockchaininfo,getnetworkinfo, logs, and wallet state.
If restored chainstate fails to load, stop the node and follow Reindex & Recovery. Do not delete wallets while repairing node state.
Backup review checklist
| Check | Expected answer |
|---|---|
| Wallet backup exists | Yes, for every wallet with funds. |
Backup was made with backupwallet | Yes. |
| Offline copy exists | Yes. |
| Restore test performed | Yes, on a separate machine or datadir. |
| PQHD seed procedure documented | Yes. |
| Node data snapshot is stopped or crash-consistent | Yes, if used. |
wallets/ excluded from destructive recovery scripts | Yes. |
Source of truth
| Topic | Source |
|---|---|
| Wallet backup and restore RPCs | ../tidecoin/src/wallet/rpc/backup.cpp |
| Wallet backup operator guide | ../tidecoin/doc/managing-wallets.md |
| Data directory layout | ../tidecoin/doc/files.md |
| Recovery flags | ../tidecoin/src/init.cpp |
See also: Data Directory, Reindex & Recovery, Wallets / Import and Export.