15%

Збережіть 15% на всі хостинг-послуги

Перевірте свої навички і отримайте Знижку на будь-який план хостингу

Використовуй код:

Skills
Почати
09.10.2024

MySQL помилка – Сервер завершив роботу без оновлення PID файлу

Помилка “Сервер завершив роботу, не оновивши файл PID” зазвичай виникає, коли MySQL не вдається правильно запуститися або раптово завершує роботу. Файл PID (ідентифікатор процесу) – це невеликий файл, який MySQL використовує для відстеження свого ідентифікатора процесу, і зазвичай він зберігається в каталозі даних MySQL. Коли MySQL не може створити або оновити цей файл, це може вказувати на проблему з конфігурацією, правами доступу або іншими основними проблемами.

Ось посібник з усунення неполадок і виправлення цієї помилки:

Розіграш преміум-акаунтів Telegram

Приєднуйтесь зараз
Telegram Premium Star Star

Загальні причини помилки

  • Неправильна конфігурація MySQL: Помилки у файлі конфігурації my.cnf можуть призвести до того, що MySQL не зможе запуститися.
  • Права доступу до файлів і каталогів: Неправильна власність або права доступу до каталогів або файлів даних MySQL.
  • Проблеми з дисковим простором: Заповнений диск або обмежений простір на розділі, де встановлено MySQL, можуть завадити запуску MySQL.
  • Пошкоджені таблиці MySQL: Пошкодження у файлах даних MySQL також може призвести до проблем із запуском.
  • Кілька екземплярів: Якщо кілька екземплярів MySQL або MariaDB намагаються працювати одночасно, вони можуть конфліктувати один з одним.

Покрокове виправлення помилки

  1. Перевірте журнал помилок MySQL. Журнал помилок часто надає найбільше інформації про те, чому MySQL не вдалося запуститися. Знайдіть журнал помилок MySQL (зазвичай mysql.err або mysqld.log):
    cat /var/log/mysql/error.log

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

  2. Перевірте місце розташування файлу PID. Повідомлення про помилку згадує місце розташування файлу PID. Перевірте, що каталог файлу PID існує і що MySQL має право на запис у нього. Перевірте файл конфігурації my.cnf, щоб знайти очікуване місце розташування файлу PID:
    sudo nano /etc/mysql/my.cnf

    Шукайте рядок, подібний до:

    pid-file = /var/run/mysqld/mysqld.pid

    Переконайтеся, що каталог існує:

    sudo mkdir -p /var/run/mysqld

    Встановіть відповідну власність:

    sudo chown mysql:mysql /var/run/mysqld
  3. Перевірте права доступу до файлів і каталогів. Переконайтеся, що MySQL має правильну власність і права доступу для каталогу даних та його файлів:
    sudo chown -R mysql:mysql /var/lib/mysql

    sudo chmod -R 755 /var/lib/mysql

    Це надає MySQL права на читання та запис у свій власний каталог даних.

  4. Переконайтеся, що є достатньо дискового простору. Перевірте, що на розділі, де встановлено MySQL, є достатньо вільного місця:
    df -h

    Якщо диск заповнений, вам, можливо, потрібно буде звільнити місце перед перезапуском MySQL.

  5. Перевірте наявність кількох екземплярів. Якщо інший екземпляр MySQL або MariaDB працює, це може викликати конфлікти. Зупиніть будь-які запущені екземпляри:
    sudo systemctl stop mysql

    sudo systemctl stop mariadb

    Завершіть будь-які залишкові процеси MySQL:

    sudo killall -9 mysqld
  6. Виправте таблиці MySQL. Якщо журнал помилок вказує на пошкодження таблиць, спробуйте відремонтувати таблиці:
    sudo mysqlcheck --all-databases --repair --user=root --password

    Замініть root на ваше ім’я користувача MySQL.

  7. Виправте проблеми з конфігурацією MySQL. Якщо є проблеми з файлом конфігурації my.cnf, спробуйте закоментувати проблемні рядки або повернутися до стандартної конфігурації. Зробіть резервну копію поточного my.cnf:
    sudo cp /etc/mysql/my.cnf /etc/mysql/my.cnf.backup

    Закоментуйте або видаліть нестандартні налаштування та перезапустіть MySQL:

    sudo nano /etc/mysql/my.cnf
  8. Перезапустіть MySQL. Після внесення необхідних змін спробуйте перезапустити MySQL:
    sudo systemctl restart mysql

    Або для систем, що використовують службу:

    sudo service mysql restart

    Перевірте статус, щоб переконатися, що він працює:

    sudo systemctl status mysql
  9. Перевстановіть MySQL (останній засіб). Якщо жоден з наведених вище кроків не спрацював, як останній засіб, ви можете спробувати перевстановити MySQL. Це може призвести до втрати даних, якщо резервна копія недоступна, тому переконайтеся, що ви зробили резервну копію важливих баз даних перед продовженням:
    sudo apt-get remove --purge mysql-server mysql-client mysql-common

    sudo apt-get autoremove

    sudo apt-get autoclean

    Потім перевстановіть MySQL:

    sudo apt-get install mysql-server

Висновок

Помилку “Сервер завершив роботу, не оновивши файл PID” можна вирішити, перевіривши файли конфігурації, підтвердивши права доступу, забезпечивши достатній дисковий простір і виправивши будь-які основні конфлікти. Дотримуючись наведених вище кроків, ви повинні зуміти визначити причину помилки і знову запустити ваш сервер MySQL. Завжди пам’ятайте про резервне копіювання ваших баз даних перед внесенням значних змін або перевстановленням MySQL, щоб уникнути втрати даних.

15%

Збережіть 15% на всі хостинг-послуги

Перевірте свої навички і отримайте Знижку на будь-який план хостингу

Використовуй код:

Skills
Почати