Обновление MariaDB с версии 5.5 до версии 10.3 на CentOS 7 с ISPManager для 1С-Битрикс
Задача: обновить MariaDB для требований 1С-Битрикс и настроить по рекомендациям.
Перед установкой рекомендую сделать резервную баз данных. Удаляем текущую версию mariadb 5.5, установленную на centos 7:
service mariadb stop yum remove mariadb mariadb-server
смотрим какие зависимости будут удалены:
ispmanager-lite coremanager-pkg-mysql ispmanager-pkg-roundcube mysqltuner )
Включаем официальный репозиторий для mariadb 10.3:
yum install nano epel-release -y
Теперь создаем файл:
nano /etc/yum.repos.d/mariadb.repo
и добавим от сюда или мой конфиг для CentOS 7. По ссылке есть для Ubuntu, Debian и еще некоторых.
# 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 10.3:
yum install MariaDB-server MariaDB-client -y
Запускаем MariaDB:
mkdir -p /var/run/mysqld chown -R mysql:mysql /var/run/mysqld systemctl enable mariadb service mariadb start
Обновляем базы:
mysql_upgrade
Устанавливаем зависимости которые удалились при удалении MariaDB 5.5:
yum install -y ispmanager-lite coremanager-pkg-mysql ispmanager-pkg-roundcube mysqltuner
Перезапускаем панель ISPmanager:
pkill -9 core
Проверяем
У меня при перезапуске сервера не запускалась бд, для этого можно создать задание на cron под root.
/usr/bin/mkdir /var/run/mysqld/ && /usr/bin/chown mysql:mysql /var/run/mysqld
Проверим настройки бд в битриксе /bitrix/admin/perfmon_db_server.php?lang=ru , мне показало красным на следующие параметры:
innodb_flush_log_at_trx_commit=2 key_buffer_size=256M query_cache_limit=4M innodb_buffer_pool_size=256M innodb_flush_method=O_DIRECT transaction-isolation=READ-COMMITTED
Для изменения открываем файл:
/etc/my.cnf.d/server.cnf
и под [mysqld] заполняем настройки выше или те, которые вам нужны по рекомендации. После чего перезапускаем бд или сам сервер. После всего перечисленного выше мы будем иметь MariaDB 10.3 и все нужные настройки согласно битриксу.
Анонимный помошник
21.08.2019Чтобы сервер после ребута запускался без костылей, достаточно изменить пид файл — на тот что используется панелью:
#pid-file = /var/run/mysqld/mysqld.pid
pid-file=/var/lib/mysql/mysql.pid
Теперь после ребута — все подымается без крон заданий
sergey
22.10.2019+1 странно что идет речь и про зависимость, но нет про /etc/my.cnf
Дмитрий
04.12.2019Измените тему чуть , просто после обновления нет настроек в сервере бд
нужно в ssh символическую ссылку командой ln -s /usr/sbin/mysqld /usr/libexec/mysqld
Дмитрий
04.12.2019ln -s /usr/sbin/mysqld /usr/libexec/mysqld Для появления настроек
Lao Sun
11.11.2020> У меня при перезапуске сервера не запускалась бд, для этого можно создать задание на cron под root
> /usr/bin/mkdir /var/run/mysqld/ && /usr/bin/chown mysql:mysql /var/run/mysqld
Описанное решение с CRON это — костыль 👆
В оригинале надо открыть /usr/lib/tmpfiles.d/, проверить наличие файла mariadb.conf (если нет то создать).
Там (в mariadb.conf) должна быть инструкция «d /var/run/mysqld 0755 mysql mysql -»
(согласно данной инструкции требуемая директория будет создаваться автоматически средствами само Linux)
Ссылка на доку.: https://man7.org/linux/man-pages/man5/tmpfiles.d.5.html