2.3.5 Устранение неполадок при установке сервера MySQL Microsoft Windows
При первой установке и запуске MySQL вы можете столкнуться с определенными ошибками, препятствующими запуску сервера MySQL. Этот раздел поможет вам диагностировать и исправить некоторые из этих ошибок.
В первую очередь при устранении проблем с сервером обратитесь к журналу ошибок. Сервер MySQL использует журнал ошибок для записи информации, относящейся к ошибке, которая препятствует запуску сервера. Журнал ошибок находится в каталоге, указанном в файле my.ini. По умолчанию каталог данных находится по адресу C:\Program Files\MySQL\MySQL
Server 5.7\data или C:\ProgramData\Mysql в Windows 7 и Windows Server 2008. Каталог C:\ProgramData по умолчанию скрыт. Вам необходимо изменить параметры папок, чтобы увидеть каталог и его содержимое. Более подробную информацию о журнале ошибок и понимании его содержимого см. в разделе 5.4.2 «Журнал ошибок».
Для получения информации о возможных ошибках также обратитесь к сообщениям на консоли, отображаемым при запуске службы MySQL. Используйте команду SC START mysqld_service_name или NET START mysqld_service_name из командной строки после установки mysqld в качестве службы, чтобы увидеть любые сообщения об ошибках, касающиеся запуска сервера MySQL в качестве службы. См. раздел 2.3.4.8 «Запуск MySQL как службы Windows».
Следующие примеры показывают другие распространенные сообщения об ошибках, с которыми вы можете столкнуться при установке MySQL и первом запуске сервера:
-
Если сервер MySQL не может найти базу данных привилегий
mysqlили другие критически важные файлы, он отображает эти сообщения:System error 1067 has occurred. Fatal error: Can't open and lock privilege tables: Table 'mysql.user' doesn't exist
Эти сообщения часто возникают, когда каталоги базы данных или данных MySQL установлены в других местах, отличных от стандартных (
C:\Program Files\MySQL\MySQL Server 5.7иC:\Program Files\MySQL\MySQL Server 5.7\dataсоответственно).Такая ситуация может возникнуть при обновлении MySQL и его установке в новом месте, но файл конфигурации не обновляется для отражения нового расположения. Кроме того, старые и новые файлы конфигурации могут конфликтовать. Убедитесь, что вы удаляете или переименовываете все старые файлы конфигурации при обновлении MySQL.
Если вы установили MySQL в каталог, отличный от
C:\Program Files\MySQL\MySQL Server 5.7, убедитесь, что сервер MySQL знает об этом с помощью файла конфигурации (my.ini). Поместите файлmy.iniв каталог Windows, обычноC:\WINDOWS. Чтобы определить его точное расположение по значению переменной средыWINDIR, выполните следующую команду из командной строки:C:\>
echo %WINDIR%Вы можете создать или изменить файл параметров с помощью любого текстового редактора, например Блокнота. Например, если MySQL установлен в
E:\mysql, а каталог данных находится вD:\MySQLdata, вы можете создать файл параметров и настроить раздел[mysqld]для указания значений параметровbasedirиdatadir:[mysqld] # set basedir to your installation path basedir=E:/mysql # set datadir to the location of your data directory datadir=D:/MySQLdata
Имена путей в Microsoft Windows в файлах параметров задаются с использованием (слешей), а не обратных слэшей. Если вы используете обратные слэши, используйте их дублирование:
[mysqld] # set basedir to your installation path basedir=C:\\Program Files\\MySQL\\MySQL Server 5.7 # set datadir to the location of your data directory datadir=D:\\MySQLdata
Правила использования обратного слэша в значениях файлов параметров приведены в разделе 4.2.2.2 «Использование файлов параметров».
Если вы измените значение
datadirв файле конфигурации MySQL, вы должны перенести содержимое существующего каталога данных MySQL перед перезапуском сервера MySQL. -
Если вы переустановили или обновили MySQL, не останавливая и не удаляя существующую службу MySQL, и установили MySQL с помощью MySQL Installer, вы можете увидеть эту ошибку:
Error: Cannot create Windows service for MySql. Error: 0
Это происходит, когда Мастер конфигурации пытается установить службу и находит существующую службу с тем же именем.
Одним из решений этой проблемы является выбор имени службы, отличного от
mysql, при использовании мастера конфигурации. Это позволяет правильно установить новую службу, но оставляет устаревшую службу на месте. Хотя это безопасно, лучше удалять устаревшие службы, которые больше не используются.Чтобы окончательно удалить старую службу
mysql, выполните следующую команду как пользователь с правами администратора в командной строке:C:\>
SC DELETE mysql[SC] DeleteService SUCCESSЕсли утилита
SCнедоступна для вашей версии Windows, скачайте утилитуdelsrvс http://www.microsoft.com/windows2000/techinfo/reskit/tools/existing/delsrv-o.asp и используйте синтаксисdelsrv mysql.
© 2025 Oracle
Licensed under the GPLv2 License.