Я наткнулся на кирпичную стену, пытаясь установить MySQL v5.5 на свой компьютер.
Мой компьютер - это Windows 7 x64, Enterprise edition.
MySQL устанавливается нормально, но когда я запускаю «Мастер настройки экземпляра MySQL», он навсегда останавливается на шаге «Запуск службы» (я могу позволить ему работать в течение 30 минут без ответа). Если я захожу в службы, я вижу, что служба «MySQL» не запущена, и если я пытаюсь ее запустить, появляется сообщение: «Windows не может запустить службу MySQL на локальном компьютере. Ошибка 1067: процесс неожиданно завершился».
Я пробовал следующее:
Во всем остальном моя машина работает на 100%. InfiniDB (совместимая с MySQL база данных) устанавливается на 100%, как и Visual Studio 2010, Microsoft SQL Server и т. Д. И т. Д.
Ваш совет, как это обойти?
p.s. Вот экран, на котором он застрял на 15 минут, пока я не убил процесс:
Обновление 2010-12-20
Пробовал MySQL v5.1, тоже не сработало. Это удивительно - если вы наберете «mysqld /?» Или «mysqld -help», это не поможет. И, если вы попытаетесь перезапустить службу вручную, она не отобразит никаких сообщений об ошибках. Может ли это быть более бесполезным?
Обновление 2010-12-21
Установил MySQL 6.0 alpha, и все заработало. Однако я бы предпочел не использовать альфа-версию, учитывая, что "стабильная" версия совсем не такая :(
Обновление 2010-12-21
Нашел http://dev.mysql.com/doc/refman/5.1/en/windows-troubleshooting.html, занимающийся устранением неполадок в Windows.
Обнаружено, что вы можете создать журнал ошибок, если служба не запускается - см. Здесь: http://dev.mysql.com/doc/refman/5.1/en/error-log.html
Обновление 2010-12-21
Ага! Ключ. Чтобы увидеть ошибку, добавьте «--console»:
mysqld --console
Это возвращает:
101221 13:57:28 [Note] Plugin 'FEDERATED' is disabled.
InnoDB: The InnoDB memory heap is disabled
InnoDB: Mutexes and rw_locks use Windows interlocked functions
InnoDB: Compressed tables use zlib 1.2.3
101221 13:57:28 InnoDB: Initializing buffer pool, size = 203.0M
101221 13:57:28 InnoDB: Completed initialization of buffer pool
InnoDB: Error: log file .\ib_logfile0 is of different size 0 56623104 bytes
InnoDB: than specified in the .cnf file 0 106954752 bytes!
101221 13:57:28 [ERROR] Plugin 'InnoDB' init function returned error.
101221 13:57:28 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
101221 13:57:28 [ERROR] Unknown/unsupported storage engine: INNODB
101221 13:57:28 [ERROR] Aborting
101221 13:57:28 [Note] mysqld: Shutdown complete
Обновление 2010-12-21
Теперь он устанавливается правильно. См. Ответ ниже.
Вот как я решил проблему:
Шаг 1. По умолчанию невозможно выяснить причину, по которой служба не запускается. Итак, скажите ему, чтобы он запустился в нерабочем режиме и передавал ошибки в консоль:
mysqld --console
Шаг 2: В моем конкретном случае мне пришлось удалить содержимое:
C:\ProgramData\MySQL
... затем переустановите. В установщике MySQL v5.5 есть ошибка: если вы удалите MySQL v5.5, чтобы исправить проблему с плохой установкой, он не сможет очистить C: \ ProgramData \ MySQL, а это означает, что невозможно установить MySQL v5.5 на с этого момента, не удаляя этот несанкционированный каталог.
Подсказки:
Открытое письмо команде разработчиков MySQL в Oracle:
--- начать открытое письмо Oracle ---
Уважаемая команда разработчиков MySQL в Oracle:
Если при установке MySQL служба не запускается, сообщите нам, почему, либо (а) указав нам направление журнала ошибок, либо (б) отобразив этот журнал ошибок.
Неспособность сделать это выставляет Oracle в некомпетентном свете.
Искренне Ваш,
Все, кто устанавливает MySQL в Windows.
--- конец открытого письма Oracle ---
Я согласен с Gravitas, но вам не нужно переустанавливать (особенно при установке MySQL
Сервер x.x находится в другой папке, отличной от папки по умолчанию в C: / Program Files /).
Эти шаги помогли мне успешно запустить службу. Работал в Win7 x64, поэтому я предполагаю, что x32 будет в порядке :)
Откройте файл my.ini, в котором установлен MySQL Server x.x (у меня был 5.5, но 5.1 тоже в порядке)
Перейдите к строке, где написано:
datadir=C:/ProgramData/MySQL/MySQL Server x.x/data
-> (Это путь по умолчанию)
Измените строку выше на что-то вроде этого:
datadir="<Drive_Letter>:/path/where/MySQL/is/installed/MySQL Server x.x/data/"
Скопируйте все содержимое C:/ProgramData/MySQL/MySQL Server x.x/
к недавно назначенному datadir
КРОМЕ ib_logfile0
& ib_logfile1
(переместите их в другое место в качестве резервной копии).
Удалить C:/ProgramData/MySQL/MySQL Server x.x/
.
Повторно запустить MySQLInstanceConfig
.
Проверьте TCP/IP networking
но НЕ изменить настройки безопасности (оставить их без изменений).
Запустить службу (ib_logfile(1,2)
будет восстановлен).
P.S. Перезагрузите и очистите временные файлы - после перезагрузки - с помощью CCleaner. По какой-то (странной?) Причине вы не можете подключиться к СУБД MySQL из IDE или MySQL Workbench CE x.x после применения вышеуказанных настроек до перезагрузки.
ПРИМЕЧАНИЕ. Изменение параметров безопасности приведет к зависанию утилиты настройки из-за другой ошибки.
вводится при включении TCP / IP с любыми другими настройками.
Надеюсь это поможет!
http://mydailytech.com/post/how-to-fix-mysql-error-1067/
проверьте и перейдите по ссылке выше - она должна разрешиться, как и в моем случае.
надеюсь, это поможет
Цитата с веб-сайта, который разместил rigatum:
При установке MySQL, если вы устанавливаете его в нестандартный каталог, вам необходимо указать путь к файлу по умолчанию, прежде чем вы сможете запустить MySQL или установить службу MySQL, иначе вы получите ошибку 1067.
Сначала давайте откроем командную строку. Перейдите в папку установки MySQL и найдите mysqld.exe. Затем запустите это:
mysqld –remove MySql
Это приведет к удалению службы MySQL. Теперь переустановите службу с параметром defaults-file:
mysqld –install <service name> –defaults-file=<full path of “my.ini” file>
Например:
mysqld –install MySql –defaults-file=c:\mysql\my.ini
Наслаждайтесь безошибочной установкой MySQL.
И я просто добавляю - в этом случае нужно удалить не только programdata \ mysql, но и папку innoDB: \ mysql datafiles
Для справки, несколько часов я пытался получить 5.5.20
установить на Windows 2008 64bit
. Это никогда не начнется. Я пробовал все примеры, которые мог найти, чтобы исправить. Включая принятый ответ здесь. Никогда не работал.
Поэтому я понизил рейтинг до 5.1.61
и это сработало как чемпион. Первый раз.
То, что я сделал, было
Кстати, я на всякий случай сбросил базу данных с помощью mysqldump --all-databases :)
Добавление логического innodb_flush_method=normal
к my.ini
работал у меня. Я использую Windows 7 x64 с MySQL 5.7, перемещаю базы данных на жесткий диск емкостью 3 ТБ. Краткое руководство:
net stop sqlXX
data
папка с командой xcopy "C:\ProgramData\MySQL\MySQL Server X.X\data" "<new_directory>\data" /s
"<new_directory>\data"
Удалить ib_logfile0
и ib_logfile1
C:ProgramData\MySQL\MySQL Server X.X\my.ini
, устанавливать datadir="<new directory>/data"
, Добавить innodb_flush_method=normal
внизу файла и сохранитеnet start mysqlXX
Здесь XX - номер вашей версии. Я использую 5.7, поэтому я использовал net start mysql57
.
Согласно связанному обсуждению, значение по умолчанию для этого - innodb_flush_method=unbuffered
, который зависит от размера сектора 512 байт, что нормально для жестких дисков размером менее 2 ТБ. Если размер жесткого диска> 2 ТБ, он обычно форматируется с использованием секторов размером 4096 байт, что вызывает ошибку 1067.
Я тоже пробовал все вышеперечисленное, и это единственное, что решило эту проблему.