Corrupted / fragmented wallet.dat
Berkeley DB salvage pipeline followed by pywallet key extraction. Works even when db_verify fails.
Source & output
Pipeline
1
Verify Berkeley DB integrity
db_verify /path/to/corrupted/wallet.dat
2
Aggressive salvage dump
db_dump -r /path/to/corrupted/wallet.dat
3
Rebuild clean wallet.dat
db_load ~/Recovered/wallet/wallet.dat
4
Extract keys with pywallet
python2 pywallet.py --dumpwallet --datadir ~/Recovered/wallet