После установки MySQL через Brew я получаю ошибку-сервер выходит без обновления PID-файла



хорошо, я искал повсюду и потратил довольно много времени на установку, удаление, попытку различных вариантов, но без успеха.



Я на Mac OS X Lion (10.7.3) и пытаюсь настроить Python, MySQL.



я успешно установил Python и MySQL через HomeBrew.
Python работает отлично.



после установки MySQL я выполнил первые 2 шага-unset и mysql_install_db команды.



Теперь, когда я пытаюсь запустить mysql " mysql.сервер старт", я получаю следующую ошибку



ERROR! The server quit without updating PID file (/usr/local/var/mysql/Brajeshwar.local.pid).




  • Brajeshwar Это мое имя пользователя на моей машине.

950   25  

25 ответов:

изменить 2012/09/18: Как указал Кейн убедитесь, что mysql база данных правильно настроена, прежде чем делать что-либо еще. Смотрите "ошибка PID на mysql.запуск сервера?" для получения дополнительной информации.

оригинальный ответ сохранен ради истории: Это, скорее всего,и проблема с разрешениями. Проверьте /usr/local/var/mysql/*.err. Мой сказал:

120314 16:30:14  InnoDB: Operating system error number 13 in a file operation.
InnoDB: The error means mysqld does not have the access rights to
InnoDB: the directory.
InnoDB: File name ./ibdata1
InnoDB: File operation call: 'open'.
InnoDB: Cannot continue operation.
120314 16:30:14 mysqld_safe mysqld from pid file /usr/local/var/mysql/janmoesen.local.pid ended

мне тоже пришлось сделать это:

sudo chown _mysql /usr/local/var/mysql/*

я обнаружил, что это была проблема с разрешениями с mysql папка.

chmod -R 777 /usr/local/var/mysql/ 

решил это за меня.

Я закончил с полной переустановкой mysql, и это, наконец, сработало.

предупреждение это приведет к удалению всех ваших баз данных, поэтому сначала сохраните дампы.

brew remove mysql
brew cleanup
launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
rm ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
sudo rm -rf /usr/local/var/mysql

brew install mysql
mysqld --initialize --explicit_defaults_for_timestamp
mysql.server start # no sudo!

у меня была эта проблема на mac 10.10.5 Yosemite

что я сделал, чтобы решить эту

cd /usr/local/var/mysql
sudo rm *.err && sudo rm *.pid
sudo reboot
sudo mysql.server start

ноябрь 2014: Если вы получаете эту ошибку на MySQL 5.6.x на Mac OS X Mavericks или Yosemite и хотите использовать MySQL с PHP локально (/tmp/mysql.sock-это то, где PHP PDO ожидает найти файл sock), вот что исправило его для меня:

1) раскомментируйте строки файла конфигурации homebrew по умолчанию и отредактируйте, как показано ниже

$ sudo vi /usr/local/Cellar/mysql/5.6.21/my.cnf
...
basedir = /usr/local/Cellar/mysql/5.6.21
datadir = /usr/local/var/mysql
port = 3306
server_id = <UNIQUE_NUMBER_HERE_OR_LEAVE_COMMENTED_OUT>
socket = /tmp/mysql.sock
pid-file = /usr/local/var/mysql/[BOXNAME].local.pid
....

BOXNAME - это то, что у вас есть в вашей системе Prefs -> Network в качестве уникального идентификатора для вашего компьютера в сети.

2) установить разрешения на всех файлах в MySQL datadir. Все они принадлежали [my_username]. MySQL очень придирчив к этому и отказывается создавать PID-файл, если он (пользователь _mysql) не владеет каталогом.

$ sudo chown -R _mysql:mysql /usr/local/var/mysql

3) запустите MySQL с помощью скрипта bash helper / wrapper:

$ sudo mysql.server start
Starting MySQL
. SUCCESS! 

надеюсь, что это поможет. Если вышеизложенное не работает для вас, попробуйте запустить двоичный файл mysqld_safe вручную в каталоге Cellar / mysql/VERSION_/bin/ и проверьте, какие настройки (если это работает)

sudo /usr/local/Cellar/mysql/5.6.12/bin/mysqld_safe &

если это работает, вы можете

ps aux | grep mysql 

и увидеть что-то вроде

[username]  6881   0.0  2.7  3081392 454836   ??  S     8:52AM   0:00.54 /usr/local/Cellar/mysql/5.6.21/bin/mysqld --basedir=/usr/local/Cellar/mysql/5.6.21 --datadir=/usr/local/var/mysql --plugin-dir=/usr/local/Cellar/mysql/5.6.21/lib/plugin --verbose --log-error=/usr/local/var/mysql/BOXNAME.local.err --pid-file=/usr/local/var/mysql/BOXNAME.local.pid

Я не уверен, почему это сработало для меня, но это показывает вам, где я получил мое.параметры файла конфигурации cnf from. Вы также можете использовать параметры командной строки, чтобы попытаться устранить неполадки при запуске mysqld вручную.

если вы запускаете управление запуском сервера MySQL с помощью mysqld_safe, вам, возможно, придется сделать это, чтобы закрыть его перед попыткой mysql.вспомогательный сервер Баш. Сопротивляться желание убить -9 [PID], потому что вы можете повредить свои данные.

mysqladmin -uroot shutdown

удачи!

у меня была такая же проблема на OS X El Capitan, вот последовательность команд терминала, которая исправила ее для меня.

удалить файлы ошибок (вам придется изменить путь в зависимости от вашей установки)

sudo rm /usr/local/mysql/data/*.err

найти информацию для процесса MySQL, который все еще работает и убить его:

ps -A | grep -m1 mysql | awk '{print }' | sudo xargs kill -9

Теперь перезапустите MySQL:

/usr/local/mysql/support-files/mysql.server start

это сработало для меня:

sudo chmod -R 777 /usr/local/var/mysql/
sudo /usr/local/mysql/support-files/mysql.server start

Если я правильно помню, это проблема с разрешениями. Попробуйте "коснуться" и "chmod" файла pid или папки, в которой хранится файл.

моя проблема заключалась в том, что я запустил сервер как sudo один раз, а затем попытался перезапустить его как локальный пользователь.

здесь mysql не смог написать в '.err ' файл принадлежит root. Мне пришлось удалить этот файл и перезапустить сервер:

sudo rm /usr/local/var/mysql/*.err
mysql.server start

У меня есть аналогичная проблема с MySQL на Mac(Mac Os X не может запустить сервер MySQL. Причина: 255, а также "ошибка! Сервер завершает работу без обновления PID-файла"). После долгого процесса проб и ошибок, наконец, чтобы восстановить права доступа к файлам, я просто сделал это:

запустите дисковые утилиты.приложение
выберите Мой диск на левой панели
нажмите на кнопку "восстановить права доступа к диску"

Это сделал трюк для меня. Надеюсь, это может помочь кому-то еще.

это сработало для меня на 10.12.2:

$ rm /usr/local/var/mysql/*.err

затем

$ brew services restart mysql

для меня это сработало с:

unset TMPDIR
mysql_install_db --user=`whoami` --basedir="$(brew --prefix mariadb)" --datadir=/usr/local/var/mysql --tmpdir=/tmp

то, что сработало для меня было:

  1. перейдите в каталог установки mysql
  2. sudo chmod -R 777 data
  3. затем вернитесь в один каталог
  4. cd support-files/
  5. sudo ./mysql.server start

после этого сервер начал бежать.

но проблема с этим методом заключается в том, что я должен повторять это каждый раз, когда я хочу запустить mysql сейчас. Не знаю, почему он начал вести себя так внезапно.

sudo chmod -R 777 /usr/local/var/mysql/

работает для меня.

у меня был тот же вопрос:

но ситуация была, каждый раз, когда я пытаюсь ввести:

/usr/local/mysql/support-files/mysql.server start

файл с именем localhost.pid создается вместо iMax0.local.pid который был указан в ошибке:

ERROR! The server quit without updating PID file (/usr/local/mysql/data/iMax0.local.pid).

решение, которое работает для меня было копирование localhost.pid и переименовать его в iMax0.local.pid.

мое решение на OSX El Capitan было:

sudo chmod ugo+w /tmp

Это было внезапно нарушено.

ошибка:

ERROR! The server quit without updating PID file

и журнал показал:

Can't start server : Bind on unix socket: Permission denied

также может быть полезно отметить, что под OSX нет my.cnf файл по умолчанию и не нужен по умолчанию, который я не знал. Удачи вам!

$ sudo mysql.server restart

это работает для меня.

У меня была аналогичная проблема. Но следующие команды спасли меня.

cd /usr/local/Cellar
sudo chown _mysql mysql

это проблема с разрешением файла. Проверьте разрешения на диск и ремонт.

Osx = > Cmd+Space = > Disk Utilty = > Проверьте Разрешения На Диск.

проверка завершена после восстановления прав доступа к диску. mysql.команда запуска сервера работает успешно.

ни один из ответов работал для меня. Однако, я просто сделал sudo mysql.server start и это сработало хорошо.

кроме того, для меня он не показывал проблему с разрешениями в *.файл err.

найти usr / local/var/mysql / your_computer_name.местный.err file и понять дополнительную информацию об ошибке

местоположение : /usr/местные/ВАР/MySQL в/имя_компьютера.местный.подстраховались

Это, вероятно, проблема с разрешениями

  1. найти, если mysql работает и убить его

ps-ef / grep mysql

убийство -9 PID

где PID-значение второго столбца 2. проверьте право собственности mysql

ls-laF / usr / local/var/mysql/

if it is owned by root, change it mysql or your user name



sudo chown-R mysql / usr / local/var/mysql/

У меня была эта проблема на Linux, но причина имеет отношение к любой установке mysql. В моем случае сервер рушился до завершения запуска и обновления файла pid. Сообщения об ошибках были замечены при запуске mysqld напрямую, а не через "service mysql start".

в моем случае причиной был раздел, в котором находились файлы журнала, будучи полным. Удаление файлов журнала позволило mysql начать все сначала. Чтобы проверить эту проблему, перейдите в расположение вашего mysql журналы активности, и делать df ..

попробуйте это (OSX)

Шаг 1: ps -aux | grep mysql

затем убить 4-значный номер PID

Шаг 2: kill 1965

Шаг 3: mysql.server start

или имея трудное время, чтобы найти эти номера PID, попробуйте это ниже

Шаг 1: ps -aux | grep mysql

Шаг 2 снова: killall

Шаг 3 снова: mysql.server start

при установке из исходных кодов,пожалуйста следуйте инструкциям в файле INSTALL-SOURCE

где инструкции по установке приведены в section 2.8

после установки проверьте, есть ли какой-либо процесс запуска mysql с ps aux / grep mysql

вы найдете вот так

root      1817  0.0  0.0 108336  1228 ?        S    Jan21   0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/mail.gaurav.local.pid
mysql     2141  0.0  1.2 497660 24588 ?        Sl   Jan21   0:26 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/usr/local/mysql/data/mail.gaurav.local.err --pid-file=/usr/local/mysql/data/mail.gaurav.local.pid --socket=/tmp/mysql.sock --port=3306
root      5659  0.0  0.0 103256   840 pts/13   S+   11:30   0:00 grep mysql

kill все процессы, связанные с mysql, а затем попробуйте запустить mysql server

первый mv -f /var/lib/mysql /var/lib/mysql.bak и попробуйте команду mysql_install_db --user=mysql --ldata=[destination] замените назначение каталогом данных, после этого запустите MySQL с /etc/init.d/mysql restart

Comments

    Ничего не найдено.