Miranda NG MDBX database driver
|Miranda NG MDBX database driver
|Miranda NG team
This database driver might suffer problems because of PC instability or disk damages. Thus that's vitally important to make backups once a day to minimize the chance of data loss.
This database driver does not work correctly under Wine due to the lack of some necessary functions in the Wine itself. Use Dbx_sqlite database driver.
Provides Miranda database support: global settings, contacts, history, settings per contact.
Based on libmdbx library, but contains some changes from the Miranda NG team which are necessary to meet the specific needs of Miranda.
Make a backup copy of the damaged database before restoring!
mdbx_chk.exe is located in the Miranda root folder.
mdbx_chk.exe -i -w -v -t -1 "path\to\corrupted.dat"
This command will select the second to last meta page (since the last one is probably pointing to corrupted snapshot).
Each meta page contains the necessary information (number transactions, geometry, etc.) as well as a pointer (usually) to own MVCC snapshot that seems to "float" in many pages along with the rest of the MVCC snapshots. Each such snapshot is generated when the writing transaction is committed.
If the above does not help
mdbx_dump.exe and mdbx_load.exe are located in the Miranda root folder.
mdbx_dump.exe -n -a -f "%TEMP%\corrupted.tmp" "path\to\corrupted.dat" mdbx_load.exe -n -a -f "%TEMP%\corrupted.tmp" "path\to\repaired.dat"
This extracts as much data as possible from the corrupted.dat to the temporary file and builds repaired.dat.