MySQL PID завершен (не может запустить MySQL)

У меня есть чистая установка MySQL (mysql-5.5.24-osx10.6-x86_64). Я нахожусь на Lion (OS 10.7.4) с Mac Pro Quad Core. Я установил MySQL установщик графического интерфейса, а также установил панель pref и элемент запуска.

Однако, когда я бегу:

sudo ./bin/mysqld_safe

Я получаю это сообщение:

120515 17:58:19 mysqld_safe Logging to '/usr/local/mysql-5.5.24-osx10.6-x86_64/data/Dannys-Mac-Pro.local.err'.
120515 17:58:19 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql-5.5.24-osx10.6-x86_64/data
120515 17:58:20 mysqld_safe mysqld from pid file /usr/local/mysql-5.5.24-osx10.6-x86_64/data/Dannys-Mac-Pro.local.pid ended

Я также не могу запустить MySQL из панели настроек.

Вот что я попробовал до сих пор, основываясь на часах поиска в Google и сегодняшних исследованиях:

Проблемы с разрешениями?

Это:

cd /usr/local
sudo chown mysql mysql
sudo chown mysql mysql-5.5.24-osx10.6-x86_64
sudo chown _mysql mysql
sudo chown _mysql mysql-5.5.24-osx10.6-x86_64

а также

sudo chown -R /usr/local/mysql-5.5.24-osx10.6-x86_64/
sudo chown -R /usr/local/mysql

Это:

sudo chown -R root:wheel /Library/StartupItems/MySQLCOM

Проблемы со ссылками?

Это:

в /usr/local/mysql/support-files/mysql.server - я сделал:

basedir="/usr/local/mysql"
datadir="/usr/local/mysql/data"

В файле /etc/rc.common добавьте следующую строку в конце: / usr / local / mysql / bin / mysqld_safe --user=mysql &

Это:

sudo ln -s /usr/local/mysql-5.5.24-osx10.6-x86_64 /usr/local/mysql

Я также попробовал процесс удаления здесь и переустановил, но это, казалось, не имело значения. Я также запустил Activity Monitor в OS X, чтобы посмотреть, были ли запущены какие-либо другие процессы mySQL, но это не так.

Ничто из вышеперечисленного не сработало, так что я вроде как в конце Вот журнал из файла.err, расположенный по адресу:

/usr/local/mysql-5.5.24-osx10.6-x86_64/data/Dannys-Mac-Pro.local.err

120515 18:07:43 mysqld_safe mysqld from pid file /usr/local/mysql-5.5.24-osx10.6-x86_64/data/Dannys-Mac-Pro.local.pid ended
120515 18:13:01 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql-5.5.24-osx10.6-x86_64/data
120515 18:13:01 [Warning] Setting lower_case_table_names=2 because file system for /usr/local/mysql-5.5.24-osx10.6-x86_64/data/ is case insensitive
120515 18:13:01 [Note] Plugin 'FEDERATED' is disabled.
/usr/local/mysql-5.5.24-osx10.6-x86_64/bin/mysqld: Table 'mysql.plugin' doesn't exist
120515 18:13:01 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
120515 18:13:01 InnoDB: The InnoDB memory heap is disabled
120515 18:13:01 InnoDB: Mutexes and rw_locks use GCC atomic builtins
120515 18:13:01 InnoDB: Compressed tables use zlib 1.2.3
120515 18:13:01 InnoDB: Initializing buffer pool, size = 128.0M
120515 18:13:01 InnoDB: Completed initialization of buffer pool
120515 18:13:01 InnoDB: highest supported file format is Barracuda.
120515 18:13:01  InnoDB: Waiting for the background threads to start
120515 18:13:02 InnoDB: 1.1.8 started; log sequence number 1595675
120515 18:13:02 [ERROR] /usr/local/mysql-5.5.24-osx10.6-x86_64/bin/mysqld: unknown option '--skip-locking'
120515 18:13:02 [ERROR] Aborting

120515 18:13:02  InnoDB: Starting shutdown...
120515 18:13:03  InnoDB: Shutdown completed; log sequence number 1595675
120515 18:13:03 [Note] /usr/local/mysql-5.5.24-osx10.6-x86_64/bin/mysqld: Shutdown complete

120515 18:13:03 mysqld_safe mysqld from pid file /usr/local/mysql-5.5.24-osx10.6-x86_64/data/Dannys-Mac-Pro.local.pid ended

Обновление: я обновил ту же машину со Snow Leopard до Mountain Lion 10.8.1, и теперь MySQL прекрасно работает с обновлением, мне не пришлось ничего делать дополнительно.

11 ответов

У меня та же проблема при установке новейшей версии mysql mysql-5.6.10-osx10.7-x86.dmg для моей MAC OS 10.7.5. Ниже приведены мои решения. Сначала удалите установленный MySQL

sudo rm /usr/local/mysql
sudo rm -rf /usr/local/mysql*
sudo rm -rf /Library/StartupItems/MySQLCOM
sudo rm -rf /Library/PreferencePanes/My*
sudo rm -rf ~/Library/PreferencePanes/My*
sudo rm -rf /Library/Receipts/mysql*
sudo rm -rf /Library/Receipts/MySQL*
sudo rm -rf /var/db/receipts/com.mysql.*

Затем получите mysql-5.1.68-osx10.6-x86.dmg, установите старую версию и готово!

Так как я не могу оставлять комментарии (набрал <50 репутации:(), я пишу это здесь:)

как говорит @AndPy, то же самое со мной, если вы ls -l /usr/local/var/mysql Вы можете видеть, что файл COMPUTER-NAME.local.err принадлежит _mysql или что-то подобное.... в этом случае просто удалите файл и mysql.server start создаст новый, принадлежащий вашему пользователю, и на этот раз запустится правильно:)

Если файл уже принадлежит вашему пользователю, это не поможет, вам нужно больше гуглить:(

У меня была такая же проблема после обновления до OS X Mavericks.

Запуск MySQL . ОШИБКА! Сервер вышел без обновления файла PID

Как упоминали AndPy и AndPy, мне также пришлось переименовать (на самом деле я удалил файл) файл ошибок, расположенный в $ cd /usr/local/var/mysql, Мой файл ошибок был назван localhost.err, После удаления файла с $ rm localhost.err Я мог бы наконец запустить MySQL снова с $ mysql.server start,

Я обнаружил эту ошибку в стеке redmine bitnami, потому что владелец файлов в каталоге данных неверен.

Проверьте, что владелец каталога /mysql/data/ должен быть пользователем 'mysql'

Надеюсь, это поможет.

У меня такая же проблема.

В /usr/local/var/mysql я нашел файл в форме COMPUTER-NAME.local.err. Простое изменение этого имени файла решило проблему. Теперь я могу запустить сервер MySQL с

mysql.server start

Мой ответ очень похож на другие, но немного отличается, и это относится, в основном, к стеку bitnami mamp. Исправление для меня было:

sudo chown -R mysql mysql/

mysql/ каталог находится в Applications/<mampstack-version>/

Выше устанавливает mysql, чтобы быть владельцем каталога mysql рекурсивно в другие каталоги.

Если вы хотите, чтобы эта вещь работала, сделайте следующее:

Вам нужно сначала удалить mysql, поэтому прежде чем делать это, убедитесь, что у вас есть резервная копия всех ваших БД.

brew remove mysql

Затем вам нужно убедиться, что определенные файлы удалены, создать пакетный скрипт из следующих команд и запустить его:

sudo rm /usr/local/mysql
sudo rm -rf /usr/local/var/mysql
sudo rm -rf /usr/local/mysql*
sudo rm ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
sudo rm -rf /Library/StartupItems/MySQLCOM
sudo rm -rf /Library/PreferencePanes/My*
launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
rm -rf ~/Library/PreferencePanes/My*
sudo rm -rf /Library/Receipts/mysql*
sudo rm -rf /Library/Receipts/MySQL*
sudo rm -rf /private/var/db/receipts/*mysql*

Идти к /etc/hostconfig используя вашу любимую программу редактирования и удалите строку MYSQLCOM=-YES-

Тогда беги brew cleanup затем установите MySQL, используя brew install mysql

После этого вы, вероятно, снова получите ту же ошибку. Перейдите в папку cd /usr/local/var/mysql/, Там должен быть файл с именем localhost.local.err

бежать cat ./localhost.local.err и посмотрите в файл. Вы должны увидеть что-то похожее на:

2018-03-24 15:41:49 140735679804288 [ERROR] Can't start server: Bind on TCP/IP port. Got error: 48: Address already in use

2018-03-24 15:41:49 140735679804288 [ERROR] Do you already have another mysqld server running on port: 3306 ?

Если вы это сделаете, запустите команду sudo lsof -i :3306 и вы, вероятно, получите что-то вроде этого:

COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME mysqld 74 _mysql 20u IPv6 0xXXXXXXXXXXXXX 0t0 TCP *:mysql (LISTEN)

Это означает, что mysql уже запущен и прослушивает порт 3306, и вам нужно его убить. использование top чтобы убить программу или просто использовать Activity Monitor, чтобы убить ее. В любом случае, как только это будет сделано, вернитесь к cd /usr/local/var/mysql/ и удали папку localhost.local.err,

После этого запустите mysql.server start, и вы должны получить следующее:

180324 15:46:18 mysqld_safe Starting mysqld daemon with databases from /usr/local/var/mysql SUCCESS!

И поздравляю. Я пытался исправить это в течение недели, и это так легко исправить, и я только что понял это. Я ненавижу себя.

Дайте это вихрь..

  1. Перейдите в родительский каталог проблемы cd YOURPATH/usr/local/mysql
  2. rm -rf *.local.err (удаляет файл)
  3. touch YOURUSERNAME.local.pid (создает новый файл *.local.pid, на который была выдана ошибка)
  4. вернитесь в ваш проект и перезапустите MySQL, используя mysql.server start

Я пробовал много часов, но это работает для меня, просто измените владельца файла каталога MySQL на пользователя с именем «mysql».

      chown -R mysql <path>/mysql-5.7.39-linux-glibc2.12-x86_64

Помогло только удаление файла mysql-bin.index в /usr/local/var/mysql/.

120515 18:13:01 [ОШИБКА] Не удается открыть таблицу mysql.plugin. Пожалуйста, запустите mysql_upgrade, чтобы создать его.

  • Что касается этой ошибки, я предполагаю, что вы указали datadir в my.cnf. Если вы используете нестандартный каталог данных для MySQL, вам нужно переместить папки mysql и performance_schema (в зависимости от того, что существует) в каталог данных, указанный в my.cnf. Вы можете найти эти папки в каталоге MySQL.

В MySQL 5.5+ опция --skip-lock удалена. Вместо этого используйте --skip-external-lock. Обратитесь к документации MySQL -> http://dev.mysql.com/doc/refman/5.5/en/mysql-nutshell.html Цитата: "Опции сервера --enable-Lock и --skip-Lock (используйте --external-lock и --skip-external-lock)."

Другие вопросы по тегам