MySQL — самая популярная система управления реляционными базами данных с открытым исходным кодом. LAMPОн быстрый, простой в использовании, масштабируемый и является неотъемлемой частью популярных LEMPстеков.

В этом руководстве вы узнаете, как установить и защитить MySQL в Ubuntu 20.04.

Установка MySQL на Ubuntu

Для его установки выполните следующие команды:

sudo apt update
sudo apt install mysql-server

После завершения установки служба MySQL запустится автоматически. Чтобы убедиться, что сервер MySQL работает, введите:

sudo systemctl status mysql

Защита MySQL

Установка MySQL поставляется с названным сценарием mysql_secure_installation, который позволяет вам легко улучшить безопасность сервера базы данных.

Вызвать скрипт без аргументов:

sudo mysql_secure_installation

Вам будет предложено настроить, VALIDATE PASSWORD PLUGIN который используется для проверки надежности паролей пользователей MySQL и повышения безопасности.

Существует три уровня политики проверки пароля: низкий, средний и сильный. Нажмите y, если вы хотите настроить плагин проверки пароля или любую другую клавишу, чтобы перейти к следующему шагу.

В следующем запросе вам будет предложено установить пароль для пользователя root MySQL.

Если вы настроите плагин проверки пароля, скрипт покажет вам надежность вашего нового пароля. Введите yдля подтверждения пароля.

Далее вам будет предложено удалить анонимного пользователя, ограничить доступ пользователя root к локальному компьютеру, удалить тестовую базу данных и перезагрузить таблицы привилегий. Вы должны ответить yна все вопросы.

Войти как root

Для взаимодействия с сервером MySQL из командной строки используйте клиентскую утилиту MySQL, которая устанавливается как зависимость от пакета сервера MySQL.

В MySQL 8.0 пользователь root аутентифицируется auth_socketплагином по умолчанию.

Плагин auth_socketаутентифицирует пользователей, которые подключаются localhostчерез файл сокета Unix. Это означает, что вы не можете аутентифицироваться как root, указав пароль.

Чтобы войти на сервер MySQL в качестве пользователя root, введите:

sudo mysql

Если вы хотите войти на свой сервер MySQL как пользователь root с помощью внешней программы, такой как phpMyAdmin, у вас есть два варианта.

Первый — изменить метод аутентификации с auth_socketна mysql_native_password. Вы можете сделать это, выполнив следующую команду:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'very_strong_password';
FLUSH PRIVILEGES;

Второй рекомендуемый вариант — создать нового выделенного администратора с доступом ко всем базам данных:

GRANT ALL PRIVILEGES ON *.* TO 'administrator'@'localhost' IDENTIFIED BY 'very_strong_password';