The following options to mysqld can be used to
change the behavior of the BDB storage engine.
For more information, see Section 5.1.2, “Server Command Options”.
Table 13.3. BDB Option/Variable Reference
| Name | Cmd-Line | Option file | System Var | Status Var | Var Scope | Dynamic |
|---|---|---|---|---|---|---|
| bdb_cache_size | Yes | Yes | Yes | Global | No | |
| bdb-home | Yes | Yes | Global | No | ||
| - Variable: bdb_home | Yes | Global | No | |||
| bdb-lock-detect | Yes | Yes | Global | No | ||
| - Variable: bdb_lock_detect | Yes | Global | No | |||
| bdb_log_buffer_size | Yes | Yes | Yes | Global | No | |
| bdb-logdir | Yes | Yes | Global | No | ||
| - Variable: bdb_logdir | Yes | Global | No | |||
| bdb_max_lock | Yes | Yes | Yes | Global | No | |
| bdb-no-recover | Yes | Yes | ||||
| bdb-shared-data | Yes | Yes | Global | No | ||
| - Variable: bdb_shared_data | Yes | Global | No | |||
| bdb-tmpdir | Yes | Yes | Global | No | ||
| - Variable: bdb_tmpdir | Yes | Global | No | |||
| have_bdb | Yes | Global | No | |||
| skip-bdb | Yes | Yes | ||||
| skip-sync-bdb-logs | Yes | Yes | Yes | Global | No | |
| sync-bdb-logs | Yes | Yes | Global | No | ||
| - Variable: sync_bdb_logs | Yes | Global | No |
The base directory for BDB tables. This
should be the same directory that you use for
--datadir.
The BDB lock detection method. The option
value should be DEFAULT,
OLDEST, RANDOM, or
YOUNGEST.
The BDB log file directory.
Do not start Berkeley DB in recover mode.
Don't synchronously flush the BDB logs.
This option is deprecated; use
--skip-sync-bdb-logs
instead (see the description for
--sync-bdb-logs).
Start Berkeley DB in multi-process mode. (Do not use
DB_PRIVATE when initializing Berkeley DB.)
The BDB temporary file directory.
Disable the BDB storage engine.
Synchronously flush the BDB logs. This
option is enabled by default. Use
--skip-sync-bdb-logs
to disable it.
If you use the --skip-bdb option,
MySQL does not initialize the Berkeley DB library and this saves a
lot of memory. However, if you use this option, you cannot use
BDB tables. If you try to create a
BDB table, MySQL uses the default storage
engine instead.
Normally, you should start mysqld without the
--bdb-no-recover option if you
intend to use BDB tables. However, this may
cause problems when you try to start mysqld if
the BDB log files are corrupted. See
Section 2.17.2.3, “Starting and Troubleshooting the MySQL Server”.
With the bdb_max_lock variable,
you can specify the maximum number of locks that can be active on
a BDB table. The default is 10,000. You should
increase this if errors such as the following occur when you
perform long transactions or when mysqld has to
examine many rows to execute a query:
bdb: Lock table is out of available locks Got error 12 from ...
You may also want to change the
binlog_cache_size and
max_binlog_cache_size variables
if you are using large multiple-statement transactions. See
Section 5.2.3, “The Binary Log”.
See also Section 5.1.3, “Server System Variables”.

User Comments
Add your own comment.