В текущий момент в стандартных репозитариях Centos 7 лежит уже устаревшая mariaDB 5 версии, она вполне рабочая и подходит для работы любого сайта, но современные CMS уже начинают ругаться на неё и просят версию поновее. Даже консервативный до требований 1С-Битрикс хочет уже новый сервер MariaDB минимум 10 версии. Попробуем её обновить. Данная инструкция так же подойдет для Fedora и Rad Hat.
Обновляем MariaDB с 5 до 10 версии
Даже в расширенных репозитариях CentOS 7 везде старые версии, но разработчики MariaDB позаботились о нас и сделали свой собственный репозитарий. Для начала нам нужно добавить его. Для версии mariadb 10.3 нам потребуется:
yum install mc epel-release -y
Создаем файл:
mcedit /etc/yum.repos.d/mariadb.repo
И теперь нужно вставить туда этот код:
# MariaDB 10.3 CentOS repository list - created 2018-02-15 08:21 UTC # http://downloads.mariadb.org/mariadb/repositories/ [mariadb] name = MariaDB baseurl = http://yum.mariadb.org/10.3/centos7-amd64 gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1
Репозитарий добавили, сейчас нужно удалить старую mariaDB, если она установлена:
service mariadb stop yum remove mariadb mariadb-server
Если существую какие-то БД уже на сервере они не удаляться после этих команд, удалиться только сам сервер и клиент MariaDB. И собственно пробуем установить новую версию из свежего репозитария который мы добавили ранее:
yum install MariaDB-server MariaDB-client -y
Запускаем новую версию MariaDB 10.3 :
mkdir -p /var/run/mysqld chown -R mysql:mysql /var/run/mysqld systemctl enable mariadb service mariadb start
Конвертируем старые базы данных под новый сервер:
mysql_upgrade
Всё должно работать! Но обычно так просто ничего не получается и нихрена не работает. Возможно при удалении старой версии удалились какие-то зависимости, поэтому их нужно будет доставить в ручную. Внимательно читайте что выдаётся в консоль после каждой команды. Лично у меня не захотела запускаться новая версия со старым конфигом, поэтому пришлось править файлик /etc/my.cnf и удалять там параметры которые не нравятся новой версии. В остальном всё прошло удачно и все сайты поднялись.
Работает!
спасибо, мне помогло.
После команды mysql_upgrade была ошибка с доступом, помогла команда:
mysql_upgrade -v -u root -p
Со старыми серваками вечно столько проблем
Спасибо, все получилось
На счет как обычно нихрена не работает сразу — согласен! 🙂
Причем не важно, что делаешь