Поиск по сайту:

Установите MySQL в Ubuntu 22.04 LTS


В этом руководстве вы узнаете, как установить MySQL в Ubuntu Linux, а затем как установить пароль пользователя MySQL root и, наконец, как получить доступ к серверу MySQL от имени пользователя root.

Все шаги, приведенные ниже, проверены на только что установленной серверной версии Ubuntu 22.04 LTS.

Предварительные условия

Перед установкой MySQL убедитесь, что в вашей системе Ubuntu установлены последние пакеты:

sudo apt update
sudo apt upgrade

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

sudo reboot

1. Установите MySQL в Ubuntu Linux.

MySQL доступен в репозиториях Ubuntu Linux по умолчанию. Чтобы установить MySQL в Ubuntu Linux, запустите:

sudo apt install mysql-server

Эта команда устанавливает все необходимые компоненты для настройки сервера базы данных MySQL в Ubuntu.

Чтобы проверить версию MySQL, запустите:

mysql --version

Или используйте заглавную букву V:

mysql -V

Пример вывода:

mysql  Ver 8.0.29-0ubuntu0.22.04.2 for Linux on x86_64 ((Ubuntu))

1.1. Запуск, перезапуск и остановка службы MySQL

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

sudo systemctl status mysql

Пример вывода:

* mysql.service - MySQL Community Server
     Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
     Active: active (running) since Mon 2022-05-09 07:47:00 UTC; 15min ago
    Process: 1217 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
   Main PID: 1225 (mysqld)
     Status: "Server is operational"
      Tasks: 37 (limit: 37964)
     Memory: 359.7M
        CPU: 1.939s
     CGroup: /system.slice/mysql.service
             `-1225 /usr/sbin/mysqld

May 09 07:47:00 ubuntu22ct systemd[1]: Starting MySQL Community Server...
May 09 07:47:00 ubuntu22ct systemd[1]: Started MySQL Community Server.

Проверьте статус MySQL в Ubuntu 22.04 Linux

Как видите, служба MySQL загружена и работает! Если по какой-либо причине он не запускается, вы можете запустить службу MySQL с помощью команды:

sudo systemctl start mysql

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

sudo systemctl enable mysql

Чтобы перезапустить службу MySQL, запустите:

sudo systemctl restart mysql

2. Установите пароль пользователя root MySQL.

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

MySQL поставляется со сценарием mysql_secure_installation для удаления небезопасных настроек по умолчанию и защиты сервера базы данных.

Сценарий mysql_secure_installation выполнит следующее:

  • Настройте КОМПОНЕНТ ПРОВЕРКИ ПАРОЛЯ,
  • Если КОМПОНЕНТ ПРОВЕРКИ ПАРОЛЯ включен, установите предпочитаемую политику проверки пароля,
  • Удалить анонимных пользователей,
  • Запретить удаленный вход пользователя root,
  • Удалите тестовую базу данных и удалите привилегии для тестовой базы данных,
  • Наконец, перезагрузите таблицы привилегий.

Теперь давайте запустим этот скрипт:

sudo mysql_secure_installation

Когда вы запустите эту команду в первый раз после установки MySQL, вы подключитесь к MySQL с пустым паролем. Затем вам будет предложено установить ПЛАГИН ПРОВЕРКИ ПАРОЛЯ.

ПЛАГИН ПРОВЕРКИ ПАРОЛЯ используется для проверки паролей и повышения безопасности. Он проверяет надежность пароля и позволяет пользователям устанавливать только те пароли, которые достаточно безопасны.

Настройка КОМПОНЕНТА ПРОВЕРКИ ПАРОЛЯ не является обязательной. Можно оставить эту функцию отключенной. Однако я рекомендую вам использовать надежные и уникальные пароли при создании ролей пользователей. Если вы не хотите включать ПЛАГИН ПРОВЕРКИ ПАРОЛЯ, просто нажмите любую клавишу, чтобы пропустить этап проверки пароля и продолжить остальные шаги.

Я хочу использовать этот ПЛАГИН ПОДТВЕРЖДЕНИЯ ПАРОЛЯ, поэтому я ввел y для да:

 Securing the MySQL server deployment.

 Connecting to MySQL using a blank password.

 VALIDATE PASSWORD COMPONENT can be used to test passwords
 and improve security. It checks the strength of password
 and allows the users to set only those passwords which are
 secure enough. Would you like to setup VALIDATE PASSWORD component?

 Press y|Y for Yes, any other key for No: y

Если вы выберете да, вам будет предложено выбрать уровень политики паролей. Доступны три политики проверки пароля. Это НИЗКИЙ, СРЕДНИЙ и СИЛЬНЫЙ.

Каждая политика паролей содержит набор правил паролей, которые следует использовать при создании новых ролей базы данных. Например, если вы выберете СРЕДНИЙ, пароль должен содержать не менее 8 символов, включая цифры, строчные и прописные буквы, а также специальный символ. Выберите любую подходящую вам политику паролей.

Я использую политику паролей НИЗКОГО уровня, поэтому выбираю 0 (ноль):

 There are three levels of password validation policy:

 LOW    Length >= 8
 MEDIUM Length >= 8, numeric, mixed case, and special characters
 STRONG Length >= 8, numeric, mixed case, special characters and dictionary                  file

 Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 

Затем дважды введите пароль пользователя root MySQL. После ввода пароля будет отображена оценка надежности пароля. В моем случае у меня получилось 100. Если надежность пароля вас устраивает, нажмите y, чтобы продолжить использование данного пароля. В противном случае введите другой надежный пароль и нажмите Y, чтобы продолжить.

 Please set the password for root here.

 New password: 

 Re-enter new password: 

 Estimated strength of the password: 100 
 Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : y

Пожалуйста, не путайте это с учетной записью root вашей системы. Это административная учетная запись для нашего сервера базы данных.

Затем нажмите y и нажмите Enter, чтобы принять значения по умолчанию для всех последующих вопросов. Это приведет к удалению анонимного пользователя, запрету удаленного входа в систему root и удалению тестовых баз данных.

Remove anonymous users? (Press y|Y for Yes, any other key for No) : y
Success.

Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.

Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
Success.

By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.

Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y
 - Dropping test database...
Success.

 - Removing privileges on test database...
Success.

Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.

Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
Success.

All done! 

Мы установили пароль пользователя root MySQL.

Вы забыли свой root-пароль MySQL? Без проблем! Вы можете легко сбросить пароль root в MySQL, как описано в следующих ссылках:

  • Как сбросить пароль root в MySQL 8 в Ubuntu Linux
  • Как сбросить пароль root-пользователя MySQL в Linux

3. Войдите в MySQL.

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

sudo mysql

Введите пароль пользователя для доступа к командной строке MySQL:

[sudo] password for ostechnix: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.29-0ubuntu0.22.04.2 (Ubuntu)

Copyright (c) 2000, 2022, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 

Войдите в MySQL как пользователь root в Ubuntu 22.04 Linux

Начните создавать роли пользователей и базы данных для своих проектов. Скоро мы рассмотрим это в отдельном руководстве.

Чтобы просмотреть раздел help, введите help или \h и нажмите клавишу ENTER:

mysql> help

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

mysql> exit

4. Измените метод аутентификации для root-пользователя MySQL.

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

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

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

? Изменить метод аутентификации для корневого пользователя MySQL в Ubuntu

Заключение

В этом руководстве мы обсудили, как установить MySQL в операционной системе Ubuntu Linux. Мы также узнали, как установить пароль пользователя root MySQL и как получить доступ к серверу MySQL или подключиться к нему от имени пользователя root.