Для начала: недавно у меня была передача сервера с уже настроенным ПО и чуть позже звонок: как поставить 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

1
2
3
4
5
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
1
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

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

1
cat /etc/opt/rh/rh-mariadb102/my.cnf.d/mariadb-server.cnf
1
2
3
[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 замените на нужное вам название.