25.07.2022

Установка MariaDB

Большое количество сервисов использует обращение к БД - web-приложения, сайты компаний, а также почтовые сервисы и различные системы учета. Сегодня рассмотрим установку одной из самых популярных СУБД - MariaDB.

В данной статье мы не будем рассматривать как установить и настроить LAMP-сервер, это рассмотрено в отдельной статье (ссылка на статью о LAMP).

Следует обратить внимание, что MySQL-сервер в репозиториях заменен на MariaDB по причине открытости кода и активного развития самого проекта.

Добавляем репозиторий, так как система установит версию MariaDB 5.5. Для каждой ОС рассмотрим этот момент отдельно. Если это устраивает, то можно пропустить этот шаг. Если вы все же решили это выполнить, то открываем страницу на официальном сайте с информацией о репозиториях и их настройке.

Ubuntu

Перед установкой обновляем данные о репозиториях и индексах пакетов:

sudo apt-get update

Обновляем пакеты и компоненты системы:

sudo apt-get upgrade

Перезагружаем систему, иногда это требуется:

sudo reboot

Проверяем версию пакета MariaDB-server в репозитории:

apt-cache show mariadb-server

Для Ubuntu 16.04 ответ будет таким

Для Ubuntu 18.04:

 

Добавим информацию о репозитории с версией 10.3. Важно: для каждой версии Ubuntu свои репозитории.

Для Ubuntu 16.04 по очереди выполняем следующие команды:

sudo apt-get install software-properties-common sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8 sudo add-apt-repository 'deb [arch=amd64,arm64,i386,ppc64el] http://mirror.timeweb.ru/mariadb/repo/10.3/ubuntu xenial main'

Для Ubuntu 18.04:

sudo apt-get install software-properties-common sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8 sudo add-apt-repository 'deb [arch=amd64,arm64,ppc64el] http://mirror.timeweb.ru/mariadb/repo/10.3/ubuntu bionic main'

Обновим информацию о содержимом репозиториев и выполним установку

sudo apt-get update sudo apt-get install mariadb-server

Независимо от версии Ubuntu, программа установки потребует ввод пароля пользователя root и его подтверждение:

CentOS

Обновляем компоненты системы, а заодно и данные о репозиториях

sudo yum update

Добавляем репозиторий для стабильной версии 10.3. Для этого переходим в каталог с файлами репозитория и создадим файл:

cd /etc/yum.repos.d/ sudo touch MariaDB.repo

Данные с официального сайта добавляем в файл любым редактором:
# MariaDB 10.3 CentOS repository list - created 2019-05-07 06:43 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

Устанавливаем пакет:

sudo yum install MariaDB-server MariaDB-client

Программа yum соберет все необходимые данные для установки и будет ожидать действия пользователя

Отвечаем на вопрос “y” и нажимаем Enter. Количество устанавливаемых пакетов у вас может быть другим.

Команду следует выполнить повторно в случае следующей ошибки:
Error downloading packages:
MariaDB-compat-10.3.14-1.el7.centos.x86_64: [Errno 256] No more mirrors to try.
MariaDB-client-10.3.14-1.el7.centos.x86_64: [Errno 256] No more mirrors to try.
MariaDB-common-10.3.14-1.el7.centos.x86_64: [Errno 256] No more mirrors to try.

После установки следует запустить сервер:

sudo service mysql start

Настройка

Большинство программ устанавливаются с параметрами по умолчанию. Независимо от дистрибутива рекомендуется выполнить оптимизацию параметров безопасности.

sudo mysql_secure_installation

Да, именно “mysql”, потому что проект MariaDB “вытек” из MySQL.

В самом начале программа запросит пароль для пользователя root. Если пароль не был установлен, то нажимаем Enter. На большинство вопросов можно ответить “y”. Вопросы и перевод к ним приведены ниже:

Change the root password? [Y/n]

Изменить пароль пользователя root?

Remove anonymous users? [Y/n]

Удалить анонимных пользователей?

Disallow root login remotely? [Y/n]

Запретить удаленное подключение от имени root?

Remove test database and access to it? [Y/n]

Удалить базу данных test и доступ к ней?

Reload privilege tables now? [Y/n]

Перезагрузить таблицу привилегий сейчас?

Проверка состояния сервера

Иногда может потребоваться проверка состояния работы сервера. Данная операция может быть выполнена командой:

sudo service mysql status

<img width="600" height="139" src="https://serverspace.ru/wp-content/uploads/2020/06/60_6.png" alt="Проверка состояния сервера" class="alignnone" />

Следует обратить внимание, что если сервер не запущен, то его нужно запустить в ручном режиме командой:

sudo service mysql start

Проверка подключения к СУБД

Подключение к СУБД происходит следующей командой:

mysql -u <ИМЯ_ПОЛЬЗОВАТЕЛЯ> -p

Если это первое подключение и другие пользователи не были добавлены, следует подключаться от пользователя root:

mysql -u root -p

Затем следует ввести пароль пользователя root, если пароль не был задан, то нажать Enter.

Выход из оболочки по команде:

exit