MDBX_CHK(1)

NAME
mdbx_chk - MDBX checking tool

SYNOPSIS
mdbx_chk [-V] [-v[v[v]]] [-n] [-q] [-c] [-w] [-d] [-i] [-s subdb] dbpath

DESCRIPTION
The mdbx_chk utility intended to check an MDBX database file.

OPTIONS

-V  Write the library version number to the standard output, and exit.

-v  Produce verbose output, including summarize space and page usage statistics. If -vv is given, be more verbose, show summarized B-tree info and space allocation. If -vvv is given, be more verbose, include summarized statistics of leaf B-tree pages. If -vvvv is given, be even more verbose, show info of each page during B-tree traversal and basic info of each GC record. If -vvvvv is given, turn maximal verbosity, display the full list of page IDs in the GC records and size of each key-value pair of database(s).

-q  Be quiet; do not output anything even if an error was detected.

-c  Force using cooperative mode while opening environment, i.e. don't try to open in exclusive/monopolistic mode. Only exclusive/monopolistic mode allow complete check, including full check of all meta-pages and actual size of database file.

-w  Open environment in read-write mode and lock for writing while checking. This could be impossible if environment already used by another process(s) in an incompatible read-write mode. This allow rollback to last steady commit (in case environment was not closed properly) and then check transaction IDs of meta-pages. Otherwise, without -w option environment will be opened in read-only mode.

-d  Disable page-by-page traversal of B-tree. In this case, without B-tree traversal, it is unable to check for lost-unused pages nor for double-used pages.

-i  Ignore wrong order errors, which will likely false-positive if custom comparator(s) was used.

-s subdb
    Verify and show info only for a specific subdatabase.

-0|-1|-2
    Using specific meta-page 0, or 2 for checking.

-t  Turn to a specified meta-page on successful check.

-T  Turn to a specified meta-page EVEN ON UNSUCCESSFUL CHECK!

-u  Warms up the DB before checking via notifying OS kernel of subsequent access to the database pages.

-U  Warms up the DB before checking, notifying the OS kernel of subsequent access to the database pages, then forcibly loads ones by sequential access and tries to lock database pages in memory.

-n  Open MDBX environment(s) which do not use subdirectories. This is legacy option. For now MDBX handles this automatically.

DIAGNOSTICS
Exit status is zero if no errors occur. Errors result in a non-zero exit status and a diagnostic message being written to standard error if no quiet mode was requested.

SEE ALSO
mdbx_stat(1), mdbx_copy(1), mdbx_dump(1), mdbx_load(1) mdbx_drop(1)

AUTHOR
Leonid Yuriev <https://gitflic.ru/user/erthink>