В данном разделе описывается использование MySQL в среде Windows. Эта информация также находится в файле "README", поставляемом с дистрибутивом MySQL Windows. См. Установка MySQL на Windows.
Запуск MySQL на Windows 95, 98 или Me
В MySQL для соединения клиента с сервером используется TCP/IP (это обеспечивает для любого компьютера в сети возможность соединиться с вашим MySQL-сервером). Поэтому TCP/IP необходимо установить на машине до запуска MySQL. TCP/IP, в частности, имеется на CD-диске с дистрибутивом Windows.
Обратите внимание: если вы используете один из старых выпусков Windows 95 (например OSR2), то вполне вероятно, что у вас установлен старый пакет Winsock; а для работы MySQL необходим Winsock 2! Самую свежую версию Winsock можно получить по адресу http://www.microsoft.com/. Windows 98 содержит новую библиотеку Winsock 2, поэтому данное замечание к ней не относится.
Для запуска mysqld необходимо открыть окно MS-DOS и выполнить:
C:\> C:\mysql\bin\mysqld
Это позволит запустить mysqld в фоновом режиме без окна. Работу MySQL-сервера можно остановить командой:
C:\> C:\mysql\bin\mysqladmin -u root shutdown
Это вызов программы администрирования MySQL от имени пользователя root , который по умолчанию соответствует пользователю Administrator в системе привилегий MySQL. Обратите внимание: система привилегий MySQL абсолютно независима от каких-либо аккаунтов пользователей в среде Windows.
Заметим, что в Windows 95/98/Me не поддерживается создание именованных каналов. Таким образом, именованные каналы вы можете использовать для соединения с MySQL-сервером, работающем в системе Windows NT/2000/XP. (Разумеется, MySQL-сервер также должен поддерживать именованные каналы. Например, при работе mysqld-opt в системе NT/2000/XP нельзя создавать соединения с использованием именованных каналов; следует применять либо mysqld-nt , либо mysqld-max-nt .)
Если mysqld не запускается, следует проверить файл "\mysql\data\mysql.err", на предмет записей, сделанных сервером, - они содержат объяснения причин, вызвавших проблему. Можно также попробовать запустить сервер командой mysqld --standalone ; в этом случае на экран будет выводиться некоторая полезная информация, которая может помочь решить проблему.
В качестве последней попытки можно попробовать запустить mysqld с флагами --standalone --debug . В этом случае mysqld будет помещать записи в файл отладки "C:\mysqld.trace". Возможно, по содержимому этого файла вы сумеете определить причину, по которой не запускается mysqld . See section E.1.2 Создание трассировочных файлов.
Для вывода всех флагов, которые "понимает" mysqld , используйте команду mysqld --help .
Запуск MySQL на Windows NT, 2000 или XP
Для того чтобы MySQL работал с TCP/IP на Windows NT 4, необходимо установить Service Pack 3 (или выше)!
Обычно MySQL устанавливается на Windows NT/2000/XP как сервис. В случае, если сервер уже работает, необходимо сначала завершить его работу при помощи следующей команды:
C:\mysql\bin> mysqladmin -u root shutdown
Это вызов программы администрирования MySQL от имени пользователя root , который по умолчанию соответствует пользователю Administrator в системе привилегий MySQL. Обратите внимание: система привилегий MySQL абсолютно независима от каких-либо аккаунтов пользователей в системе Windows.
Теперь установим сервис сервера:
C:\mysql\bin> mysqld-max-nt --install
Если требуются какие-либо опции, они должны быть определены, как "Start parameters " в инструментальной программе Services системы Windows перед запуском сервиса MySQL.
Доступ к инструментальной программе Services (Windows Service Control Manager ) можно получить в Control Panel (в Administrative Tools в Windows 2000). Рекомендуется закрывать Services при выполнении операций --instal или --remove - это предотвратит возникновение некоторых ошибок неизвестной природы.
За информацией о том, какие бинарные файлы следует использовать для запуска сервера, обращайтесь к разделу Подготовка конфигурации MySQL для Windows.
Отметим, что начиная с версии 3.23.44 MySQL имеется возможность альтернативной установки сервиса - в режиме Manual (если вам не требуется автоматический запуск сервиса при загрузке операционной системы):
C:\mysql\bin> mysqld-max-nt --install-manual
Сервис устанавливается под именем MySQL. Сразу же после установки он может быть запущен при помощи инструментальной программы Services или командой NET START MySQL .
После запуска работа mysqld-max-nt может быть завершена при помощи mysqladmin из инструментальной программы Services или командой NET STOP MySQL .
Если MySQL функционирует в качестве сервиса, то операционная система автоматически завершает работу MySQL -сервиса при программном завершении работы компьютера. В версиях MySQL < 3.23.47 Windows ожидает всего лишь несколько секунд завершения остановки, после чего уничтожает процесс сервера базы данных, если превышено время ожидания (что может быть потенциальной причиной возникновения проблем). Например, при следующем запуске обработчик таблицы InnoDB должен выполнять восстановление после аварийного завершения. Начиная с MySQL версии 3.23.48, Windows ожидает завершения процесса MySQL-сервера дольше. Если вы считаете, что этого времени для вашей версии недостаточно, безопаснее запускать MySQL-сервер не как сервис, а из командной строки и завершать его работу командой mysqladmin shutdown .
В Windows NT (но не в Windows 2000/XP) существует проблема, которая заключается в том, что система по умолчанию ожидает окончания работы сервиса только 20 секунд, после чего уничтожает процесс сервиса. Это заданное по умолчанию значение можно увеличить с помощью редактора Registry (Реестра), запустив "\winnt\system32\regedt32.exe" и отредактировав значение WaitToKillServiceTimeout в записи HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control . Следует задать другое, большее значение в миллисекундах, например 120000, чтобы Windows NT ожидала 120 секунд.
Необходимо заметить, что при работе в качестве сервиса mysqld-max-nt не имеет доступа к консоли, а следовательно, невозможно увидеть его сообщения. Информация об ошибках находится в файле "c:\mysql\data\mysql.err".
Если вы столкнулись с проблемами установки mysqld-max-nt в качестве сервиса, попробуйте запустить его с указанием полного пути:
C:\> C:\mysql\bin\mysqld-max-nt --install
Если это не поможет, можно принудить mysqld-max-nt стартовать соответствующим образом, исправив путь в Registry!
Если вы не хотите запускать mysqld-max-nt в качестве сервиса, его можно запустить следующим образом:
C:\> C:\mysql\bin\mysqld-max-nt --standalone или C:\> C:\mysql\bin\mysqld --standalone --debug
В случае последнего варианта вы получите отладочную информацию в "C:\mysqld.trace". See section E.1.2 Создание трассировочных файлов.
1 2 3 4
8 8 8
|