Не удалось запустить Демон MySQL-centos 6

EDIT: посмотрите на отмеченные комментарии ответов, чтобы решить вашу проблему.

всякий раз, когда я пытаюсь запустить службу SQLD, я получаю MySQL Daemon не удалось запустить. Я попытался "запустить" службу, выполнив следующее:

service mysqld start

и

когда я набираю: mysql

Я:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

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

Я также не могу войти в PHPMyAdmin из-за ошибки. Я могу получить доступ к странице phpmyadmin, но при входе в систему я получаю:#2002 Cannot log in to the MySQL server

EDIT:

вот мой mysql.файл журнала:

131201 13:05:07 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
131201 13:18:18 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
131201 13:18:18 [Note] Plugin 'FEDERATED' is disabled.
/usr/libexec/mysqld: Can't find file: './mysql/plugin.frm' (errno: 13)
131201 13:18:18 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
131201 13:18:18 InnoDB: The InnoDB memory heap is disabled
131201 13:18:18 InnoDB: Mutexes and rw_locks use GCC atomic builtins
131201 13:18:18 InnoDB: Compressed tables use zlib 1.2.3
131201 13:18:18 InnoDB: Using Linux native AIO
131201 13:18:18 InnoDB: Initializing buffer pool, size = 128.0M
131201 13:18:18 InnoDB: Completed initialization of buffer pool
131201 13:18:18  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.
131201 13:18:18 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended

я запустил mysql_upgrade и получил

Looking for 'mysql' as: mysql
Looking for 'mysqlcheck' as: mysqlcheck
FATAL ERROR: Upgrade failed

16 ответов


наиболее вероятной причиной этой ошибки является то, что сервер MySQL не работает. Когда вы вводите mysql вы выполняете клиент mysql.

попробуй:

# sudo service mysql start
# mysql

обновление (после того, как OP включил журнал в вопрос; взято из комментариев ниже):

спасибо, видел ваш журнал. Журнал говорит, что пользователь mysql не имеет правильные права доступа. Я предполагаю, что ваш пользователь mysql-mysql(это может быть проверены в /etc/my.cnf, выполнить

chown -R mysql:mysql /var/lib/mysql

и попробуйте запустить mysqld снова.


попробуйте перезапустить apache sudo service httpd restart. Работать на меня.


выполнить это :

chown -R mysql:mysql /var/lib/mysql

и снова попробовать!


возможно, Вам понадобится освободить место от корневого ( / ) раздела. Остановите процесс mysql:

/etc/init.d/mysql stop

удалить неиспользуемую базу данных из mySql командой:

rm -rf [Database-Directory]

выполнить в /var/lib/mysql. Теперь, если вы бежите df -h, вы, возможно, смущает еще полно места. Для удаления неиспользуемого каталога базы данных, который будет затронут, вам нужно убить процессы, использующие текущий каталог / раздел.

остановка mysql_safe или mysqld_safe и затем mysqld:

ps -A

затем найдите номер процесса mysql (например, 2234). Затем выполните:

kill 2234

теперь начните снова mysql:

/etc/init.d/mysql start

 /etc/init.d/mysqld stop

  mysqld_safe --skip-grant-tables &

  mysql_upgrade

 /etc/init.d/mysqld stop

 /etc/init.d/mysqld start

еще один совет, который работал для меня. Выполните команду:

$ mysql_install_db

  1. / etc / init.D / mysql stop
  2. Чаун -Р в mysql:mysql в файле /var/библиотека/MySQL в
  3. mysql_install_db, имел
  4. / etc / init.D / mysql start

все это спасло мой сервер MySQL!


попробовать

netstat -a -t -n | grep 3306 

чтобы увидеть любого, кто слушает порт 3306 тогда убей его!--2-->

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

убедитесь, что у вас еще нет другого процесса mysqld


У меня была такая же проблема происходит. Когда я проверил ошибку.журнал я обнаружил, что мой диск был полон.

использование:

df -h 

в командной строке. он скажет вам, сколько места у вас осталось. мой был полон. нашел свою ошибку.файл журнала составлял 4,77 ГБ. Я скачал его и удалил. Затем я использовал сервис mysqld start, и он работал.


ваша база данных была закрыта из-за нехватки памяти! Вы можете отредактировать файл my.cnf база ниже графика, чтобы решить его

performance_schema_max_table_instances=200
table_definition_cache=200
table_open_cache=128

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

$ sudo gedit /etc/my.cnf

найдите строку, начинающуюся с:

bind-address=[an-IP-address]

проверьте правильность IP-адреса после знака равенства. Если вы даже не знаете, что такое IP, просто используйте localhost, тогда вы можете подключиться только к MySQL внутри того же хоста.

если вы хотите подключиться к MySQL удаленно, вы должны фактически прокомментировать эту строку полностью, тогда она будет слушайте все IPs и порты, которые вам нужны, потому что вы будете подключаться удаленно к нему через общедоступный IPv4.

после этого добавьте пользователя для доступа к базе данных, например:

mysql> GRANT ALL ON database_name.* TO user@xx.xxx.xx.xx IDENTIFIED BY 'your_password';

заменить xx.xx.xx.xx с вашим локальным IP-адресом вашего ноутбука / рабочего стола или если он динамический, вы можете добавить их либо: '192.168.0.% 'как динамический C-класс или "%", если вы хотите иметь возможность подключения из любого места (это менее безопасно)

кроме того, если установлен брандмауэр, один должен открыть порт на брандмауэре;

например в Ubuntu:

sudo ufw allow 3306/tcp
sudo service ufw restart

теперь проверьте, можно ли запустить службу:

$ sudo service mysqld start

У меня просто была эта ошибка. Я не мог удаленно подключиться к серверу MySQL. Я попытался перезапустить сервер mysql с помощью service mysqld restart (Я использовал root). Он прекратился, но не возобновился. Оказывается, моя память была полна. Очистил несколько GBs, и он работает нормально.


Это может быть проблема с разрешением,

пожалуйста, попробуйте следующую команду /etc/init.d/mysqld start как пользователь root.


Если вы используете yum в AIM Linux Amazon EC2. Для обеспечения безопасности сделайте резервную копию каталога / var/lib / mysql

sudo yum reinstall -y mysql55-server

sudo service mysqld start

Ссылка здесь 2.10.2.1 Устранение неполадок при запуске сервера MySQL.

1.Найдите каталог данных ,он был настроен на мой.cnf.

[mysqld]
datadir=/var/lib/mysql

2. Проверьте файл err, он регистрирует сообщение об ошибке о том, почему не удалось запустить сервер mysql. имя файла err связано с вашим именем хоста.

cd /var/lib/mysql
ll
tail (hostname).err

3.Если вы найдете такие сообщения, как:

InnoDB: Error: log file ./ib_logfile0 is of different size 0 33554432 bytes
InnoDB: than specified in the .cnf file 0 5242880 bytes!
170513 14:25:22 [ERROR] Plugin 'InnoDB' init function returned error.
170513 14:25:22 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
170513 14:25:22 [ERROR] Unknown/unsupported storage engine: InnoDB
170513 14:25:22 [ERROR] Aborting

затем

удалить ib_logfile0 и ib_logfile1

, потом

/etc/init.d/mysqld start

RE: не удалось запустить Демон MySQL-centos 6 / RHEL 6

  1. Yum Установить MySQL
  2. / etc / init.запуск D / mysqld Не удалось запустить Демон MySQL. Запуск mysqld: [FAILED]

  3. просмотрите журнал: /var/log / mysqld.log

  4. вы можете получить эту ошибку: [ошибка] не может открыть mysql.таблица плагинов. Пожалуйста, запустить mysql_upgrade, чтобы создать его.

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

  1. $ mysql_install_db, имел

пожалуйста, дайте мне знать, если это не решит вашу проблему.