Table of Contents
MariaDB install
Установка
Устанавливаем как обычно, на любименький Debian 9.9
apt-get update apt-get install dirmngr curl -y
скрипт установки репозитария, скрипт проанализирует систему, установит GPG-ключи и добавит репозитарий в файл /etc/apt/sources.list.d/mariadb.list
curl https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | bash
Устанавливаем последнюю версию MariaDB, в данной статье это 10.4.6
apt-get install mariadb-server -y
Проверяем статус свежеустановленного сервиса
systemctl status mariadb ● mariadb.service - MariaDB 10.4.6 database server Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled) Drop-In: /etc/systemd/system/mariadb.service.d └─migrated-from-my.cnf-settings.conf Active: active (running) since Mon 2019-07-08 13:57:24 MSK; 5min ago Docs: man:mysqld(8) https://mariadb.com/kb/en/library/systemd/ Main PID: 1678 (mysqld) Status: "Taking your SQL requests now..." Tasks: 30 (limit: 4915) CGroup: /system.slice/mariadb.service └─1678 /usr/sbin/mysqld ... Jul 08 13:57:24 nevvad.info systemd[1]: Started MariaDB 10.4.6 database server.
и слышно ли его в сети
netstat -ltupn | grep mysql tcp6 0 0 :::3306 :::* LISTEN 1678/mysqld
Вот такой не хитрой командой попробуем подключится к бд
mysql
Настройка
Первым делом запускаем мастер настройки безопасности
mysql_secure_installation # кратко пробегусь по опросному листу Enter current password for root (enter for none): нажимаем Enter, текущий пароль root пустой. Switch to unix_socket authentication [Y/n] вводим Y, если хотим оставить возможность аутентификации через unix-сокет. Если нет n, его и введем. Change the root password? [Y/n] Тут все без слов понятно, вводим хитрый P@$$w0rd Remove anonymous users? [Y/n] гоним в шею Disallow root login remotely? [Y/n] Запрещаем root логин с удаленных хостов Remove test database and access to it? [Y/n] Тестовую базу оправляем в след анонимному юзеру Reload privilege tables now? [Y/n] перезагружаем таблицу привилегий для вступления их в силу
Проверяем. Заходим под непривилегированным пользователем, вводим пароль
mysql -u root -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 20 Server version: 10.4.6-MariaDB-1:10.4.6+maria~stretch mariadb.org binary distribution .... # без пароля, пошлет в жопу ERROR 1698 (28000): Access denied for user 'root'@'localhost'
Дополнительно
С версии 10.4 изменилась авторизация. Теперь после установки и настройки, пользователь root входит без пароля. Подробнее, в официальной документации. Для того, чтобы вернуть Password-based Authentication
нужно выполнить следующие:
ALTER USER root@localhost IDENTIFIED VIA mysql_native_password; SET PASSWORD = PASSWORD('foo');