WiredTiger includes a command line utility, wt
.
wt [-LRVv] [-C config] [-h directory] command [command-specific arguments]
The wt
tool is a command-line utility that provides access to various pieces of the WiredTiger functionality.
There are four global options:
Unless otherwise described by a wt
command, the wt
tool exits zero on success and non-zero on error.
The wt
tool supports several commands. If configured in the underlying database, some commands will run recovery when opening the database. If the user wants to force recovery on any command, use the -r
option. In general, commands that modify the database or tables will run recovery by default and commands that only read data will not run recovery.
Perform a backup of a database or set of data sources.
The backup
command performs a backup of the database, copying the database files to a specified
directory, which can be subsequently opened as a WiredTiger database. See Backups for more information, and File permissions for specifics on the copied file permissions.
wt [-rVv] [-C config] [-h directory] backup [-t uri] directory
The following are command-specific options for the backup
command:
backup
command does a backup of the entire database; the -t
option changes the backup
command to do a backup of only the named data sources.Compact a table or file.
The compact
command attempts to rewrite the specified table or file to consume less disk space.
wt [-rVv] [-C config] [-h directory] compact uri
The compact
command has no command-specific options.
Create a table or file.
The create
command creates the specified uri
with the specified configuration. It is equivalent to a call to WT_SESSION::create with the specified string arguments.
wt [-rVv] [-C config] [-h directory] create [-c config] uri
The following are command-specific options for the create
command:
Drop a table or file.
The drop
command drops the specified uri
. It is equivalent to a call to WT_SESSION::drop with the "force" configuration argument.
wt [-rVv] [-C config] [-h directory] drop uri
The drop
command has no command-specific options.
Export data in a text format.
The dump
command outputs the specified table in a portable format which can be re-loaded into a new table using the load
command.
See Dump Formats for details of the dump file formats.
wt [-rVv] [-C config] [-h directory] dump [-jrx] [-c checkpoint] [-f output] uri
The following are command-specific options for the dump
command:
dump
command opens the most recent version of the data source; the -c
option changes the dump
command to open the named checkpoint.dump
command output is written to the standard output; the -f
option re-directs the output to the specified file.List the tables and files in the database.
By default, the list
command prints out the tables and files stored in the database. If a URI is specified as an argument, only information about that data source is printed.
wt [-rVv] [-C config] [-h directory] list [-cv] [uri]
The following are command-specific options for the list
command:
-c
option is specified, the data source's checkpoints are printed in a human-readable format.-v
option is specified, the data source's complete schema table value is printed.Load a table or file from dump output.
The load
command reads the standard input for data and loads it into a table or file, creating the table or file if it does not yet exist. The data should be the format produced by the dump
command; see Dump Formats for details.
By default, if the table or file already exists, data in the file or table will be overwritten by the new data (use the -n
option to make an attempt to overwrite existing data return an error).
wt [-rVv] [-C config] [-h directory] load [-ajn] [-f input] [-r name] [uri configuration ...]
The following are command-specific options for the load
command:
-a
option is specified, record number keys in the input are ignored and the data is appended to the data source and assigned new record number keys. The -a
option is only applicable when loading into a column store.load
command reads from the standard input; the -f
option reads the input from the specified file.dump -j
command.-n
option causes the load
command to fail if there's an attempt to overwrite already existing data.load
command uses the table or file name taken from the input; the -r
option renames the data source.Additionally, uri
and configuration
pairs may be specified to the load
command. Each of these pairs will be appended to the configuration string from the dump header passed to the WT_SESSION::create call.
Load text into a table or file.
The loadtext
command reads the standard input for text and loads it into a table or file. The input data should be printable characters, with newline delimiters for each key or value.
The loadtext
command does not create the file if it does not yet exist.
In the case of inserting values into a column-store table or file, each value is appended to the table or file; in the case of inserting values into a row-store table or file, lines are handled in pairs, where the first line is the key and the second line is the value. If the row-store table or file already exists, data in the table or file will be overwritten by the new data.
wt [-rVv] [-C config] [-h directory] loadtext [-f input]
The following are command-specific options for the loadtext
command:
loadtext
command reads from the standard input; the -f
option reads the input from the specified file.Display the database log.
The printlog
command outputs the database log.
wt [-rVv] [-C config] [-h directory] printlog [-p] [-f output]
The following are command-specific options for the printlog
command:
printlog
command output is written to the standard output; the -f
option re-directs the output to the specified file.Read records from a table or file.
The read
command prints out the records associated with the specified keys from the specified data source. The data source must be configured with string or record number keys and string values.
The read
command exits non-zero if a specified record is not found.
wt [-rVv] [-C config] [-h directory] read uri key ...
The read
command has no command-specific options.
Rename a table or file.
The rename
command renames the specified table or file.
wt [-rVv] [-C config] [-h directory] rename uri name
The rename
command has no command-specific options.
Recover data from a corrupted file.
The salvage
command salvages the specified data source, discarding any data that cannot be recovered. Underlying files are re-written in place, overwriting the original file contents.
wt [-rVv] [-C config] [-h directory] salvage [-F force] uri
The following are command-specific options for the salvage
command:
-F
option forces the salvage of the file, regardless.Display database or data source statistics.
The stat
command outputs run-time statistics for the WiredTiger engine, or, if specified, for the URI on the command-line.
wt [-rVv] [-C config] [-h directory] stat [-f] [uri]
The following are command-specific options for the stat
command:
statistics=(fast)
) to WT_SESSION::open_cursor.Upgrade a table or file.
The upgrade
command upgrades the specified table or file, exiting success if the data source is up-to-date, and failure if the data source cannot be upgraded.
wt [-rVv] [-C config] [-h directory] upgrade uri
The upgrade
command has no command-specific options.
Check the structural integrity of a table or file.
The verify
command verifies the specified table or file, exiting success if the data source is correct, and failure if the data source is corrupted.
wt [-rVv] [-C config] [-h directory] verify uri
The verify
command has no command-specific options.
Write records to a table or file.
The write
command stores records into the specified data source. The data source must be configured with string or record number keys and string values.
If the write
command is called with the -a
option, each command-line argument is a single value to be appended to the specified column-store data source. If the write
command is not called with the -a
option, the command-line arguments are key/value pairs.
Attempting to overwrite an already existing record will fail.
wt [-rVv] [-C config] [-h directory] write -a uri value ...
wt [-rVv] [-C config] [-h directory] write [-o] uri key value ...
The following are command-specific options for the write
command:
-o
option changes write
to overwrite previously existing records.