Если запуск производился с
параметром AUTOCOMMIT=0, то
изменения, сделанные в в таблицах
BDB, не вносятся, пока не будет
выполнена команда COMMIT.
Кроме операции фиксации, можно
запустить команду ROLLBACK,
чтобы отменить изменения (see
Раздел 6.7.1, «Синтаксис команд BEGIN/COMMIT/ROLLBACK»).
Если вы работаете с параметром
AUTOCOMMIT=1 (значение по
умолчанию), внесенные изменения
будут фиксироваться немедленно.
Можно выполнить расширенную
транзакцию при помощи команды SQL
BEGIN WORK, после которой
изменения не будут зафиксированы
до запуска команды COMMIT
(или будут отменены при помощи
команды ROLLBACK).
Чтобы изменить параметры таблиц
BDB, можно
воспользоваться следующими
опциями mysqld:
| Параметр | Описание |
--bdb-home=directory |
Базовый каталог для таблиц
BDB. Это должен быть
тот же каталог, что и для
--datadir. |
--bdb-lock-detect=# |
Обнаружение блокировки Berkeley; одно из
значений: DEFAULT,
OLDEST, RANDOM
или YOUNGEST
|
--bdb-logdir=directory |
Каталог файла журнала Berkeley DB |
--bdb-no-sync |
Отмена синхронной записи журналов на диск |
--bdb-no-recover |
Отмена запуска Berkeley DB в режиме восстановления |
--bdb-shared-data |
Запуск Berkeley DB в режиме параллельной
обработки (при инициализации
Berkeley DB не следует использовать
DB_PRIVATE) |
--bdb-tmpdir=directory |
Имя временной директории Berkeley DB |
--skip-bdb |
Отмена использования таблиц
BDB
|
-O bdb_max_lock=1000 |
Задает максимальное количество
возможных блокировок (see
Раздел 4.5.6.4, «SHOW VARIABLES»). |
Если используется параметр
--skip-bdb, MySQL не будет
инициализировать библиотеку Berkeley
DB, что позволит сэкономить большое
количество памяти. Разумеется,
после включения этого параметра
нельзя пользоваться таблицами BDB.
если вы попытаетесь создать
таблицу BDB, то в этом
случае MySQL будет создавать таблицу
MyISAM.
Обычно если предполагается
использовать таблицы BDB,
следует запускать mysqld
без параметра --bdb-no-recover.
Однако если файлы журналов
BDB повреждены, то при
попытке запуска mysqld могут
возникнуть проблемы (see
Раздел 2.4.2, «Проблемы при запуске сервера MySQL»).
При помощи параметра
bdb_max_lock задается
максимальное количество
блокировок (10000 по умолчанию),
которые могут быть установлены на
таблицу BDB. Это значение
необходимо увеличить, если
возникают ошибки bdb: Lock table is out
of available locks или Got error 12 from ... при
проведении длинных транзакций или
когда mysqld должен
просмотреть много строк, чтобы
произвести необходимые вычисления
для запроса.
Можно также изменить
binlog_cache_size и
max_binlog_cache_size, если
используются большие
многострочные транзакции (see
Раздел 6.7.1, «Синтаксис команд BEGIN/COMMIT/ROLLBACK»).
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.
© 1995-2005 MySQL AB. All rights reserved.
