Устанавливаем MariaDB 10.2 на CentOS 7

Материал из Викиадмин
Перейти к навигации Перейти к поиску

Для начала: недавно у меня была передача сервера с уже настроенным ПО и чуть позже звонок: как поставить MySQL? Был удивлён, MariaDB там уже стоит и, мало того, активно используется. Зачем надо сносить? Оказалось, что сотрудник просто не в курсе, что это в принципе почти одно и то же. И думал, что надо ставить с нуля. Вот такие бывают ситуации.

Ну а теперь по теме: надо быстро развернуть VDS с базой. Ок..

Отключаем selinux и в ребут:

   sed -i ’s/SELINUX=enforcing/SELINUX=disabled/g’ /etc/selinux/config
   reboot

Как только появился в сети, подключаемся и продолжаем…

Меняем порт SSH и разрешаем заходить root только по ключам:

   sed -i ’s/#Port 22/Port 222/g’ /etc/ssh/sshd_config
   sed -i ’s/#PermitRootLogin yes/PermitRootLogin without-password/g’ /etc/ssh/sshd_config
   systemctl restart sshd

Накатываем обновления, нужные хранилища и привычное ПО

   yum -y install epel-release
   yum -y install centos-release-scl-rh centos-release-scl
   sed -i -e “s/enabled=1/enabled=0/g” /etc/yum.repos.d/CentOS-SCLo-scl.repo
   sed -i -e “s/enabled=1/enabled=0/g” /etc/yum.repos.d/CentOS-SCLo-scl-rh.repo
   yum update -y
   yum install mc vim htop lsof wget ncdu tmux -y

На VDS есть привычка кошмарить пользователей минимумом памяти. Если что - поднимайте тариф. Но учитывая SSD и нетребовательность к скорости, сделаем swap файл (4GB хватит для начала + добавим в fstab)

   dd if=/dev/zero of=/swap bs=1024 count=4096000
   mkswap /swap
   /bin/sync
   chmod 0600 /swap
   swapon /swap
   echo “/swap swap swap defaults 0 0” >> /etc/fstab

С сервером завершили. Теперь уже установка самой базы:

   yum –enablerepo=centos-sclo-rh -y install rh-mariadb102-mariadb-server
   scl enable rh-mariadb102 bash
cat > /etc/profile.d/rh-mariadb102.sh <<EOF
#!/bin/bash
source /opt/rh/rh-mariadb102/enable
export X_SCLS="`scl enable rh-mariadb102 'echo $X_SCLS'`"
EOF
sed -i '17a\character-set-server=utf8\nbind-address=127.0.0.1\n' /etc/opt/rh/rh-mariadb102/my.cnf.d/mariadb-server.cnf

Проверим, появились ли эти строки:

cat /etc/opt/rh/rh-mariadb102/my.cnf.d/mariadb-server.cnf
[mysqld]
character-set-server=utf8 
bind-address=127.0.0.1

Старт и автозапуск:

   systemctl start rh-mariadb102-mariadb
   systemctl enable rh-mariadb102-mariadb

Ну и первоначальный “мастер настройки”:

   mysql_secure_installation

А это как бонус: добавляем базу с нужным именем и кодировкой UTF-8

   CREATE DATABASE mantisbt CHARACTER SET utf8 COLLATE utf8_general_ci;

где mantisbt замените на нужное вам название.