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

Как установить MySQL 8.0 на RHEL/CentOS 8/7 и Fedora 35


MySQL — это бесплатная система управления реляционными базами данных с открытым исходным кодом (СУБД), выпущенная под лицензией GNU (General Public License). . Он используется для запуска нескольких баз данных на одном сервере, обеспечивая многопользовательский доступ к каждой созданной базе данных.

В этой статье описывается процесс установки и обновления последней версии MySQL 8.0 на RHEL/CentOS 8/7/6/ и Fedora с использованием репозитория MySQL Yum с помощью утилиты YUM.

Шаг 1. Добавление репозитория MySQL Yum

1. Мы будем использовать официальный репозиторий программного обеспечения MySQL Yum, который предоставит пакеты RPM для установки последней версии сервера MySQL, клиента, MySQL Utilities, MySQL Workbench, Connector/ ODBC и Connector/Python для RHEL/CentOS 8/7/6/ и Fedora 30–35.

Важно! Эти инструкции работают только при новой установке MySQL на сервере, если MySQL уже существует. > установлен с использованием стороннего RPM-пакета, то я рекомендую вам обновить или заменить установленный пакет MySQL с помощью MySQL Yum Repository».

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

2. Теперь загрузите и добавьте следующий репозиторий MySQL Yum в список репозиториев вашей соответствующей системы распространения Linux, чтобы установить последнюю версию MySQL (т. е. 8.0) выпущено 27 июля 2018 г.).

--------------- On RHEL/CentOS 8 ---------------
wget https://repo.mysql.com/mysql80-community-release-el8-1.noarch.rpm
--------------- On RHEL/CentOS 7 ---------------
wget https://repo.mysql.com/mysql80-community-release-el7-1.noarch.rpm
--------------- On RHEL/CentOS 6 ---------------
wget https://dev.mysql.com/get/mysql80-community-release-el6-1.noarch.rpm
--------------- On Fedora 35 ---------------
wget https://dev.mysql.com/get/mysql80-community-release-fc35-1.noarch.rpm
--------------- On Fedora 34 ---------------
wget https://dev.mysql.com/get/mysql80-community-release-fc34-1.noarch.rpm
--------------- On Fedora 33 ---------------
wget https://dev.mysql.com/get/mysql80-community-release-fc33-1.noarch.rpm

3. После загрузки пакета для вашей платформы Linux установите загруженный пакет с помощью следующей команды.

--------------- On RHEL/CentOS 8 ---------------
yum localinstall mysql80-community-release-el8-1.noarch.rpm
--------------- On RHEL/CentOS 7 ---------------
yum localinstall mysql80-community-release-el7-1.noarch.rpm
--------------- On RHEL/CentOS 6 ---------------
yum localinstall mysql80-community-release-el6-1.noarch.rpm
--------------- On Fedora 35 ---------------
dnf localinstall mysql80-community-release-fc35-1.noarch.rpm
--------------- On Fedora 34 ---------------
dnf localinstall mysql80-community-release-fc34-1.noarch.rpm
--------------- On Fedora 33 ---------------
yum localinstall mysql80-community-release-fc33-1.noarch.rpm

Приведенная выше команда установки добавляет репозиторий MySQL Yum в список репозиториев системы и загружает ключ GnuPG для проверки целостности пакетов.

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

yum repolist enabled | grep "mysql.*-community.*"
dnf repolist enabled | grep "mysql.*-community.*"      [On Fedora versions]

Шаг 2. Установка последней версии MySQL

5. Установите последнюю версию MySQL (в настоящее время 8.0), используя следующую команду.

yum install mysql-community-server
dnf install mysql-community-server      [On Fedora versions]

Приведенная выше команда устанавливает все необходимые пакеты для сервера MySQL mysql-community-server, mysql-community-client, mysql-community-common и mysql-community-libs.

Шаг 3. Установка разных версий MySQL

6. Вы также можете установить разные версии MySQL, используя разные субрепозитории MySQL Community Server. Субрепозиторий для последней серии MySQL (в настоящее время MySQL 8.0) активирован по умолчанию, а субрепозитории для всех остальных версий (например, серии MySQL 5.x) по умолчанию деактивированы. .

Чтобы установить определенную версию из определенного подрепозитория, вы можете использовать параметры --enable или --disable с помощью yum-config-manager. или dnf config-manager, как показано:

yum-config-manager --disable mysql57-community
yum-config-manager --enable mysql56-community
------------------ Fedora Versions ------------------
dnf config-manager --disable mysql57-community
dnf config-manager --enable mysql56-community

Шаг 4. Запуск сервера MySQL

7. После успешной установки MySQL пришло время запустить и включить сервер MySQL с помощью следующих команд:

service mysqld start
systemctl enable mysqld.service

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

systemctl status mysqld.service
OR
service mysqld status

Это пример вывода работы MySQL под моей системой CentOS 7.

Redirecting to /bin/systemctl status  mysqld.service
mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled)
   Active: active (running) since Thu 2015-10-29 05:15:19 EDT; 4min 5s ago
  Process: 5314 ExecStart=/usr/sbin/mysqld --daemonize $MYSQLD_OPTS (code=exited, status=0/SUCCESS)
  Process: 5298 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
 Main PID: 5317 (mysqld)
   CGroup: /system.slice/mysqld.service
           └─5317 /usr/sbin/mysqld --daemonize

Oct 29 05:15:19 localhost.localdomain systemd[1]: Started MySQL Server.

8. Теперь наконец проверьте установленную версию MySQL, используя следующую команду.

mysql --version

mysql  Ver 8.0.27 for Linux on x86_64 (MySQL Community Server - GPL)

Шаг 5. Обеспечение безопасности установки MySQL

9. Команда mysql_secure_installation позволяет защитить установку MySQL, выполнив важные настройки, такие как установка пароля root, удаление анонимных пользователей, удаление входа в систему root и т. д.

Примечание. MySQL версии 8.0 или выше генерирует временный случайный пароль в /var/log/mysqld.log после установки.

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

grep 'temporary password' /var/log/mysqld.log

Как только вы узнаете пароль, вы можете запустить следующую команду, чтобы защитить установку MySQL.

mysql_secure_installation

Примечание. Ввод нового пароля root означает ваш временный пароль из файла /var/log/mysqld.log.

Теперь внимательно следуйте инструкциям на экране. Для справки см. вывод приведенной выше команды ниже.

Пример вывода
Securing the MySQL server deployment.

Enter password for user root: Enter New Root Password

VALIDATE PASSWORD PLUGIN 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 plugin?

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

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: 2
Using existing password for root.

Estimated strength of the password: 50 
Change the password for root ? ((Press y|Y for Yes, any other key for No) : y

New password: Set New MySQL Password

Re-enter new password: Re-enter New MySQL 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
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.

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! 

Шаг 6: Подключение к серверу MySQL

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

mysql -u root -p

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

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 11
Server version: 8.0.27 MySQL Community Server - GPL

Copyright (c) 2000, 2021, 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>

Шаг 7. Обновление MySQL с помощью Yum

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

yum update mysql-server
dnf update mysql-server       [On Fedora versions]

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

Вот и все, вы успешно установили MySQL 8.0 в свою систему. Если у вас возникли проблемы с установкой, не стесняйтесь использовать наш раздел комментариев для решения.