popov . dev

Main

Library

Articles

Как установить M...

Как установить MySQL в Ubuntu 24.04

MySQL - это система управления базами данных с открытым исходным кодом, обычно устанавливаемая как часть популярного стека LAMP (Linux, Apache, MySQL, PHP/Python/Perl). Она реализует реляционную модель и использует язык структурированных запросов (более известный как SQL) для управления данными.

В этом руководстве вы узнаете, как установить MySQL версии 8 на сервер Ubuntu 24.04. Выполнив его, вы получите рабочую реляционную базу данных, которую сможете использовать для создания своего веб-сайта или приложения.

Для установки и работы с MySQL нам потребуется сервер с установленной Ubuntu 24.04, стабильное соединение с интернетом и максимум минут 10 времени.

Установка MySQL

С помощью утилиты apt, запущенной от прав суперпользователя обновим список пакетов и установим mysql:

sudo apt update
sudo apt-get install mysql-server

Далее, после установки убедимся что сервис MySQL запущен, используем команду:

sudo systemctl start mysql.service

Настройка MySQL

При новой установке MySQL вам потребуется запустить скрипт безопасности, включенный в систему управления базами данных. Этот скрипт изменяет некоторые менее безопасные параметры по умолчанию, например, запрещает удаленный вход в систему с правами суперпользователя и удаляет выборочных пользователей.

Предупреждение: Начиная с июля 2022 года, при запуске скрипта mysql_secure_installation без какой-либо дополнительной настройки будет возникать ошибка. Причина в том, что этот скрипт попытается установить пароль для учетной записи root MySQL при установке, но по умолчанию в установках Ubuntu эта учетная запись не настроена для подключения с использованием пароля.

До июля 2022 года этот скрипт автоматически завершал работу с ошибкой после попытки установить пароль учетной записи root и продолжить выполнение остальных запросов. Однако на момент написания этой статьи скрипт возвращал следующую ошибку после ввода и подтверждения пароля:

... Failed! Error: SET PASSWORD has no significance for user 'root'@'localhost' as the authentication method used doesn't store authentication data in the MySQL server. Please consider using ALTER USER instead if you want to change authentication parameters

Это приведет скрипт к рекурсивному циклу, выйти из которого вы сможете, только закрыв окно вашего терминала.

Поскольку скрипт mysql_secure_installation выполняет ряд других действий, полезных для обеспечения безопасности вашей установки MySQL, все же рекомендуется запустить его перед началом использования MySQL для управления вашими данными. Однако, чтобы избежать этого рекурсивного цикла, вам нужно сначала настроить способ аутентификации вашего корневого пользователя MySQL. Сначала запустите консоль MySQL:

sudo mysql

Затем выполните следующую команду ALTER USER, чтобы изменить метод аутентификации пользователя root на метод, использующий пароль. В следующем примере метод аутентификации изменяется на mysql_native_password:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

После внесения этого изменения закройте консоль MySQL:

exit

После этого вы можете запустить скрипт mysql_secure_installation без проблем.

Запустите сценарий безопасности с помощью sudo:

sudo mysql_secure_installation

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

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

Независимо от того, решите ли вы настроить плагин проверки пароля, следующим запросом будет установка пароля для пользователя MySQL root. Введите, а затем подтвердите пароль.

Обратите внимание, что, несмотря на то, что вы установили пароль для root пользователя MySQL, этот пользователь в настоящее время не настроен на аутентификацию с использованием пароля при подключении к оболочке MySQL.

Если вы использовали плагин проверки пароля (Validate Password Plugin), вы получите уведомление о надежности вашего нового пароля. Затем скрипт спросит, хотите ли вы продолжить использовать только что введенный пароль или ввести новый. Предполагая, что вы удовлетворены надежностью только что введенного пароля, введите Y, чтобы продолжить выполнение сценария.

Здесь вы можете нажать Y, а затем ENTER, чтобы принять значения по умолчанию для всех последующих вопросов. Это удалит некоторых анонимных пользователей и тестовую базу данных, отключит удаленный вход с правами суперпользователя и загрузит эти новые правила, чтобы MySQL немедленно учел внесенные вами изменения.

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

mysql -u root -p

Затем вернитесь к использованию метода аутентификации по умолчанию с помощью этой команды:

ALTER USER 'root'@'localhost' IDENTIFIED WITH auth_socket;

Это будет означать, что вы снова сможете подключиться к MySQL в качестве пользователя root, используя команду sudo mysql.

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

Comments

In order to leave your opinion, you need to register on the website