Pesquisa de site

Como instalar o MySQL 8.0 no RHEL/CentOS 8/7 e Fedora 35


MySQL é um sistema de gerenciamento de banco de dados relacional gratuito de código aberto (RDBMS) lançado sob GNU (Licença Pública Geral) . Ele é usado para executar vários bancos de dados em qualquer servidor, fornecendo acesso multiusuário a cada banco de dados criado.

Este artigo orientará você no processo de instalação e atualização da versão mais recente do MySQL 8.0 no RHEL/CentOS 8/7/6/ e Fedora usando o repositório MySQL Yum através do utilitário YUM.

Etapa 1: Adicionando o Repositório MySQL Yum

1. Usaremos o repositório de software oficial MySQL Yum, que fornecerá pacotes RPM para instalação da versão mais recente do servidor MySQL, cliente, MySQL Utilities, MySQL Workbench, Connector/ ODBC e Connector/Python para RHEL/CentOS 8/7/6/ e Fedora 30-35.

Importante: Estas instruções só funcionam em uma nova instalação do MySQL no servidor, se já houver um MySQL > instalado usando um pacote RPM distribuído por terceiros, recomendo que você atualize ou substitua o pacote MySQL instalado usando o MySQL Yum Repository ”.

Antes de atualizar ou substituir um pacote MySQL antigo, não se esqueça de fazer todos os arquivos importantes de backup e configuração do banco de dados usando nosso guia Backup de bancos de dados MySQL.

2. Agora baixe e adicione o seguinte repositório MySQL Yum à lista de repositórios do seu respectivo sistema de distribuição Linux para instalar a versão mais recente do MySQL (ou seja, 8.0 lançado em 27 de julho de 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. Depois de baixar o pacote para sua plataforma Linux, instale agora o pacote baixado com o seguinte comando.

--------------- 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

O comando de instalação acima adiciona o repositório MySQL Yum à lista de repositórios do sistema e baixa a chave GnuPG para verificar a integridade dos pacotes.

4. Você pode verificar se o repositório MySQL Yum foi adicionado com sucesso usando o seguinte comando.

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

Etapa 2: Instalando a versão mais recente do MySQL

5. Instale a versão mais recente do MySQL (atualmente 8.0) usando o seguinte comando.

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

O comando acima instala todos os pacotes necessários para o servidor MySQL mysql-community-server, mysql-community-client, mysql-community-common e mysql-community-libs.

Etapa 3: Instalando diferentes versões do MySQL

6. Você também pode instalar diferentes versões do MySQL usando diferentes sub-repositórios do MySQL Community Server. O sub-repositório para a série MySQL recente (atualmente MySQL 8.0) é ativado por padrão, e os sub-repositórios para todas as outras versões (por exemplo, a série MySQL 5.x) são desativados por padrão .

Para instalar uma versão específica de um sub-repositório específico, você pode usar as opções --enable ou --disable usando yum-config-manager ou dnf config-manager conforme mostrado:

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

Etapa 4: iniciando o servidor MySQL

7. Após a instalação bem-sucedida do MySQL, é hora de iniciar e ativar o servidor MySQL com os seguintes comandos:

service mysqld start
systemctl enable mysqld.service

Você pode verificar o status do servidor MySQL com a ajuda do seguinte comando.

systemctl status mysqld.service
OR
service mysqld status

Este é o exemplo de saída da execução do MySQL na minha caixa 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. Agora, finalmente, verifique a versão instalada do MySQL usando o seguinte comando.

mysql --version

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

Etapa 5: Protegendo a instalação do MySQL

9. O comando mysql_secure_installation permite que você proteja sua instalação do MySQL executando configurações importantes como definir a senha root, remover usuários anônimos, remover login root e assim por diante.

Nota: MySQL versão 8.0 ou superior gera uma senha aleatória temporária em /var/log/mysqld.log depois da instalação.

Use o comando abaixo para ver a senha antes de executar o comando seguro do MySQL.

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

Depois de saber a senha, você pode executar o seguinte comando para proteger sua instalação do MySQL.

mysql_secure_installation

Nota: Digite a nova senha Root significa sua senha temporária de um arquivo /var/log/mysqld.log.

Agora siga as instruções na tela cuidadosamente; para referência, veja a saída do comando acima abaixo.

Saída de amostra
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! 

Etapa 6: Conectando-se ao servidor MySQL

10. Conecte-se a um servidor MySQL recém-instalado fornecendo um nome de usuário e uma senha.

mysql -u root -p

Saída de amostra:

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>

Etapa 7: Atualizando MySQL com Yum

11. Além da instalação nova, você também pode fazer atualizações para produtos e componentes MySQL com a ajuda do comando a seguir.

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

Quando novas atualizações estiverem disponíveis para o MySQL, ele as instalará automaticamente; caso contrário, você receberá uma mensagem dizendo NÃO há pacotes marcados para atualizações.

É isso, você instalou com sucesso o MySQL 8.0 em seu sistema. Se você estiver tendo problemas para instalar, sinta-se à vontade para usar nossa seção de comentários para soluções.