mysqld
Buy this Reference Manual in softcover from Barnes & Noble!
mysqld
В большинстве случаев управление параметрами mysqld осуществляется при помощи файлов параметров (see section 4.1.2 Файлы параметров `my.cnf').
mysqld и mysqld.server считывают параметры из групп mysqld и server. mysqld_safe считывает параметры из групп mysqld, server, mysqld_safe и safe_mysqld. Встроенный сервер MySQL обычно считывает параметры из server, embedded и xxxxx_SERVER, где xxxxx - имя приложения.
mysqld принимает следующие параметры командной строки:
--ansi-b, --basedir=path--big-tables--bind-address=IP--character-sets-dir=path--chroot=pathLOAD DATA INFILE и SELECT ... INTO OUTFILE.--core-filemysqld. В некоторых системах также необходимо указать --core-file-size для safe_mysqld (see section 4.7.2 safe_mysqld, оболочка mysqld). Обратите внимание на то, что в некоторых системах, таких как Solaris, не удастся записать файл ядра, если используется параметр --user.-h, --datadir=path--debug[...]=--with-debug, то этот параметр позволяет получить файл трассировки, в котором отражена работа mysqld (see section E.1.2 Создание трассировочных файлов).--default-character-set=charset--default-table-type=type--delay-key-write-for-all-tablesMyISAM между записями (see section 5.5.2 Настройка параметров сервера).--des-key-file=filenameDES_ENCRYPT() и DES_DECRYPT().--enable-lockinglockd полностью не работает (например, в Linux), это может привести к зависанию mysqld.--enable-named-pipe-T, --exit-info--flush-?, --help--init-file=file-L, --language=...-l, --log[=file]--log-isam[=file]ISAM/MyISAM (используется только при отладке ISAM/MyISAM).--log-slow-queries[=file]long_query_time секунд (see section 4.9.5 Журнал медленных запросов).--log-update[=file]file.# где # представляет собой уникальный номер, если он не был задан (see section 4.9.3 Журнал обновлений (update)).--log-long-format--log-slow-queries, то запросы, не использующие индексов, будут заноситься в журнал медленных запросов.--low-priority-updatesINSERT/DELETE/UPDATE) будет назначен более низкий приоритет, чем операциям выбора. Это также можно реализовать при помощи {INSERT | REPLACE | UPDATE | DELETE} LOW_PRIORITY ..., чтобы понизить приоритет только одного запроса, или через SET OPTION SQL_LOW_PRIORITY_UPDATES=1, чтобы изменить приоритет в одном потоке (see section 5.3.2 Вопросы блокирования таблиц).--memlockmysqld в памяти. Этот параметр работает только в том случае, если ваша система поддерживает системный вызов mlockall(), например Solaris. Такая мера может быть полезной, если операционная система записывает mysqld в файл подкачки на диск.--myisam-recover [=параметр[,параметр...]]]DEFAULT, BACKUP, FORCE или QUICK. Если необходимо отключить данную функцию, укажите вместо набора параметров явно "". Если эта функция используется, mysqld проверит таблицу на предмет того, была ли она отмечена как сбойная или не была закрыта надлежащим образом (последний вариант действует только в том случае, если был включен параметр --skip-locking). В любом из этих случаев mysqld произведет полную проверку таблицы. Если таблица была повреждена, mysqld попытается ее восстановить. Приведенные ниже параметры влияют на работу процесса восстановления.
| Параметр | Описание |
| DEFAULT | Аналогично отсутствию каких-либо параметров для функции --myisam-recover. |
| BACKUP | Если во время восстановления таблица данных была изменена, сохраняется резервная копия файла данных `table_name.MYD' под именем `table_name-datetime.BAK'. |
| FORCE | Запуск восстановления, даже если будет утрачено более одной строки из файла `.MYD'. |
| QUICK | Не проверять строки в таблице, в которых отсутствуют удаленные блоки. |
BACKUP и FORCE. Тогда восстановление будет производиться даже в случае, если некоторые строки будут удалены, но файл данных будет сохраняться в виде резервной копии, поэтому впоследствии всегда можно будет определить, что произошло.
--pid-file=pathsafe_mysqld.-P, --port=...-o, --old-protocol--one-thread-O, --set-variable var=option--help - выводит список переменных. Подробное описание всех переменных можно найти в разделе SHOW VARIABLES этого руководства (see section 4.5.6.4 SHOW VARIABLES). Раздел по настройке параметров сервера включает информацию по их оптимизации (see section 5.5.2 Настройка параметров сервера).--safe-mode--skip-delay-key-write.--safe-show-databaseSHOW DATABASES выдает только те базы данных, для которых у пользователя есть какие-либо привилегии. Начиная с версии 4.0.2 этот параметр является недействительным и больше ни на что не влияет (его значение установлено по умолчанию), так как в новой версии появилась привилегия SHOW DATABASES (see section 4.3.1 Синтаксис команд GRANT и REVOKE).--safe-user-createGRANT, если он не имеет привилегии INSERT для таблицы mysql.user или для любого столбца этой таблицы.--skip-concurrent-insertMyISAM (используется только в том случае, если в этой функции найдена ошибка).--skip-delay-key-writedelay_key_write для всех таблиц (see section 5.5.2 Настройка параметров сервера).--skip-grant-tablesmysqladmin flush-privileges или mysqladmin reload.)--skip-host-cache--skip-lockingisamchk или myisamchk, необходимо выключить сервер (see section 1.4.3 Насколько стабильным является MySQL?). Обратите внимание на то, что в MySQL версии 3.23 для восстановления или проверки таблиц MyISAM можно использовать REPAIR и CHECK.--skip-name-resolve--skip-networkingmysqld должна осуществляться через сокеты Unix. Этот параметр рекомендуется для систем, в которых разрешены только локальные запросы (see section 5.5.5 Как MySQL использует DNS).--skip-new--skip-delay-key-write. Также задается принятый по умолчанию тип таблицы для ISAM (see section 7.3 Таблицы ISAM).--skip-symlinksymlinked в каталоге данных.--skip-safemalloc--with-debug=full, все программы будут проверять память на наличие выхода за границы области памяти при каждом заполнении и освобождении памяти. Поскольку такая проверка осуществляется довольно медленно, от нее можно отказаться, воспользовавшись этим параметром.--skip-show-databaseSHOW DATABASES, если пользователь не имеет привилегии SHOW DATABASES. Начиная с версии 4.0.2 этот параметр больше не нужен, поскольку доступ теперь может быть разрешен при помощи привилегии SHOW DATABASES.--skip-stack-tracemysqld запущен под отладчиком. В некоторых системах данный параметр также необходимо использовать для получения файла ядра (see section E.1 Отладка сервера MySQL).--skip-thread-priority--socket=path/tmp/mysql.sock.--sql-mode=параметр[,параметр[,параметр...]]REAL_AS_FLOAT, PIPES_AS_CONCAT, ANSI_QUOTES, IGNORE_SPACE, SERIALIZE, ONLY_FULL_GROUP_BY. Если нужно произвести сброс значения, параметр может быть пустым (""). Указание всех приведенных выше параметров аналогично использованию --ansi. При помощи этого параметра можно включать только необходимые режимы SQL (see section 1.9.2 Запуск MySQL в режиме ANSI).--temp-pool--transaction-isolation= { READ-UNCOMMITTED | READ-COMMITTED |SET TRANSACTION).-t, --tmpdir=path/tmp расположен на слишком маленьком диске и не может вместить все временные таблицы.-u, --user= [user_name | userid]mysqld от имени пользователя user_name или userid (число). Этот параметр является обязательным при запуске mysqld в качестве главной программы.-V, --version-W, --warningsAborted connection... в файл `.err' (see section A.2.9 Коммуникационные ошибки / Оборванные соединения.| Posted by on Thursday March 7 2002, @7:33am | [Delete] [Edit] |
Solaris does not allow setuid() programs to
produce core files. If you want MySQL to produce
a core file when it segfaults on a Solaris system,
you need to either run it as root or start the
daemon from another user. If you are using the
"mysql.server" init script, you can modify the
line that runs the safe_mysqld script and prepend
"su - USER_NAME -c ". This will change to the
specified user and then start MySQL. Be sure this
user has write permission to the MySQL log file.
| Posted by on Wednesday June 19 2002, @8:57am | [Delete] [Edit] |
Since Solaris 7 you can enable suid/setgid
programms to dump core by setting
allow_setid_core to 1 in /etc/system.
| Posted by Carl Litt on Wednesday December 18 2002, @5:27pm | [Delete] [Edit] |
When using --chroot=/path, the following steps
need to be taken before MySQL can be started :
| Posted by [name withheld] on Thursday January 23 2003, @3:40am | [Delete] [Edit] |
Can you bind to multiple addresses such as 192.168.1.*?
Add your own comment.