Post
Topic
Board Bitcoin Technical Support
Merits 8 from 3 users
Topic OP
2013 wallet.dat fails to load on version 29
by
takuma sato
on 23/09/2025, 17:44:50 UTC
⭐ Merited by LoyceV (6) ,PowerGlove (1) ,hugeblack (1)
People have been claiming that it's very easy to migrate old wallets into new versions. but Im already seeing this is not an easy as advertised. Did the test by running Bitcoin 0.8.6 on a Tails live session. The file is hosted in bitcoin.org and the SHA256SUMS.asc has a valid signature by Gavin Andresen. So I created a wallet.dat file, created some addresses, saved the wallet.dat file and moved it into my fully synced Knots 29 node. I tried opened it with just the GUI and it gets stuck loading forever. I then tried to open it with the bitcoin-qt's console with loadwallet wallet.dat (I placed it inside "wallets" folder where I think it's the modern default spot to place wallets) and it returned this error:

Code:
loadwallet wallet.dat

Wallet file verification failed. "/home/takuma/software/.bitcoin/wallets/wallet.dat" corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. (code -4)

This action generated these 3 files:

/.bitcoin/wallets/database/log.0000000001 (a binary file of 1MB)
/.bitcoin/wallets/db.log
/.bitcoin/.walletlock (empty file)

db.log contains this:

Quote
file unknown has LSN [some number], past end of log at [some number]
Commonly caused by moving a database from one database environment
to another without clearing the database LSNs, or by removing all of
the log files from a database environment
Page 0: metadata page corrupted
Page 0: could not check metadata page
wallet.dat: DB_VERIFY_BAD: Database verification failed

I really doubt the file got corrupted, I created it yesterday. I think this is just bad backwards compatibility. So it doesn't sound as easy as just drop your old wallet file into the latest version and that's it. Now im not sure what are the necessary steps to get it working.

If you want to recreate this experiment, you can download the binaries here and try generating a wallet.dat there try to load it into a modern version:

https://bitcoin.org/bin/insecure/bitcoin-core-0.8.6/

I have no tried with the actual wallet.dat files but it's actually looking great when it comes to expecting a smooth backwards compatibility experience.