Хорошо, во-первых, извините за этот вопрос, я обычно много ищу, прежде чем размещать вопрос на любом форуме или в вопросах и ответах. Но теперь я в панике, Мне нужна помощь (в том числе, чтобы сохранить работу). :)
Сегодня утром на сервере, которым я управляю, на котором размещено множество веб-сайтов клиентов компании, в которой я работаю, возникла проблема. Ошибка при попытке посетить один из веб-сайтов проста:
Ошибка установление соединения с базой данных
Сначала я попытался войти в plesk, но ошибка была той же (не удалось подключиться к БД) Итак, я попытался перезапустить весь VPS, но ничего не сделал ошибка все еще существует, поэтому я подключился через ssh и попробовал:
sudo /etc/init.d/mysql start
Я проверяю журналы mysql, и он был пуст, за исключением этого:
160801 08:07:11 mysqld_safe Запуск демона mysqld с базами данных из {{1 }} / var / lib / mysql 160801 8:07:11 [Предупреждение] Использование уникального префикса параметра key_buffer вместо key_buffer_size устарело и будет удалено в следующем выпуске. Вместо этого используйте полное имя. 160801 8:07:11 [Примечание] / usr / sbin / mysqld (mysqld 5.5.46-0ubuntu0.14.04.2) запускается как процесс 5448 ... 160801 8:07:11 [ОШИБКА] COLLATION 'utf8mb4_unicode_ci' недействителен для CHARACTER SET 'utf8' 160801 8:07:11 [ERROR] Aborting
160801 8:07:11 [Note] / usr / sbin / mysqld: Завершение работы
160801 08:07:11 mysqld_safe mysqld из файла pid / var / run / mysqld / mysqld.pid finished
Я действительно не знаю, что произошло, но думаю, проблема могла быть в той ошибке в журнале.
Я решил проблему таким образом.
I Я открыл файл /etc/mysql/my.cnf с помощью nano.
sudo nano /etc/mysql/my.cnf
И я прокомментировал эту строку:
collation-server = utf8mb4_unicode_ci
Я попытался снова запустить mysql, и теперь он работает.
Я не знаю точно, почему это произошло, и все еще пытаюсь выяснить это.
Надеюсь, это может быть полезно кому-нибудь еще.