klink0v (klink0v) wrote,
klink0v
klink0v

Про обновление MySQL

В качестве памятки к предыдущему посту. Как корректно обновлять MySQL при переходе с собственно MySQL 5.5 на MariaDB 10.1.


  1. Обновить софт как обычно.

  2. Зайти в "/etc/mysql", забэкапить и удалить все конфиги с неприлично тухлой датой создания файла. Должны остаться только папка "mariadb.conf.d", файлы "debian-start" и "mariadb.cnf".

  3. Проверить содержимое конфига "/etc/mysql/mariadb.conf.d/50-server.cnf", внести туда коррективы если требуется.

  4. Попробовать [пере]запустить MySQL-сервер.

  5. Почитать логи. Скорее всего там обнаружатся строчки типа "[ERROR] Incorrect definition of table mysql.event: expected column 'sql_mode' at position 14 to have type бла-бла-бла", "[ERROR] mysqld: Event Scheduler: An error occurred when initializing system tables. Disabling the Event Scheduler" или что-то в этом духе.

  6. Остановить MySQL-сервер ("systemctl stop mariadb").

  7. Запустить MySQL-сервер с параметром "--skip-grant-tables" ("sudo -u mysql /usr/sbin/mysqld --skip-grant-tables").

  8. Выполнить один раз "/usr/bin/mysql_upgrade", дождаться завершения работы утилиты.

  9. Остановить MySQL-сервер ("systemctl stop mariadb").

  10. Запустить MySQL-сервер "как обычно" ("systemctl start mariadb").

  11. Снова почитать логи. На этот раз всё должно запуститься без ошибок.

  12. Для использования нового синтаксиса конфига выполнить заклинание "update-alternatives --remove my.cnf /etc/mysql/my.cnf.migrated".

Tags: debian, it, linux, stretch, администрирование, памятка
Subscribe
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 4 comments