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

В этом руководстве рассмотрим, как установить и защитить MySQL на компьютере с Ubuntu 18.04. Чтобы установить MySQL на свой сервер Ubuntu, выполните следующие действия:

Сначала обновите индекс пакета apt, набрав:

sudo apt update

Затем установите пакет MySQL с помощью следующей команды:

sudo apt install mysql-server

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

sudo systemctl status mysql

Защита MySQL

Пакет сервера MySQL поставляется со скриптом mysql_secure_installation, который может выполнять несколько операций, связанных с безопасностью. Запустите скрипт, набрав:

sudo mysql_secure_installation

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

В следующем запросе вам будет предложено установить пароль для пользователя root MySQL. Как только вы это сделаете, скрипт также попросит вас удалить анонимного пользователя, ограничить доступ пользователя root к локальному компьютеру и удалить тестовую базу данных. Вы должны ответить «Y» (да) на все вопросы.

Войти как root

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

auth_socketВ системах Ubuntu, работающих под управлением MySQL 5.7 (и более поздних версий), привилегированный пользователь по умолчанию аутентифицируется подключаемым модулем.

Плагин 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';

Заключение

Теперь, когда ваш сервер MySQL запущен и вы знаете, как подключиться к серверу MySQL из командной строки.