Como instalar MySQL no CentOS 9 Stream: tutorial completo
O MySQL é um dos sistemas de gerenciamento de banco de dados mais usados em sites e aplicativos de servidor. Até por isso, ele é uma ferramenta essencial que todo webmaster deve dominar.
Por isso, neste tutorial, mostraremos como instalar o MySQL no CentOS 9 Stream por meio de uma conexão SSH.
Conteúdo
Como instalar o MySQL em um servidor CentOS 9 Stream
Há três etapas necessárias a seguir quando você deseja instalar o MySQL no CentOS 9: baixar o repositório do MySQL, instalá-lo e verificar seu status. Abaixo, passaremos por cada etapa com todos os detalhes.
1. Baixe e prepare o repositório MySQL
Antes de começar, garanta que tanto a sua hospedagem de servidor VPS ou seu servidor dedicado esteja rodando o CentOS 9 Stream e que você tenha acesso root a ele. Você pode aprender como se conectar ao seu servidor via SSH seguindo nosso tutorial.
- Precisamos atualizar o sistema ao digitar o seguinte comando:
sudo yum update
- Depois que o sistema for atualizado, chegou a hora de baixar os repositórios MySQL. Você pode verificar outras versões aqui.
sudo wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
- No final do download, você deve ver uma mensagem de confirmação de que o arquivo .rpm foi salvo.
- Agora, precisamos preparar o repositório para depois instalar MySQL e os respectivos pacotes. Digite:
sudo rpm -Uvh mysql80-community-release-el7-3.noarch.rpm
- Assim que o resultado indicar que o upload e a atualização forem completadas, você vai poder instalar o MySQL.
2. Instale o MySQL
- Você pode seguir adiante e instalar o MySQL com o comando yum install:
sudo yum install mysql-server
- Uma lista de pacotes será fornecida e você receberá uma confirmação para baixá-los. Digite y e pressione Enter para cada uma das solicitações.
- Você terá que fazer isso algumas vezes, mas eventualmente verá a mensagem Complete! no final da instalação, o que significa que o MySQL foi instalado com sucesso no seu servidor.
3. Inicie o MySQL e verifique seu funcionamento
- Uma vez que o MySQL estiver pronto no CentOS 9, ele não será iniciado automaticamente logo após a instalação. Portanto, você precisa iniciá-lo automaticamente com o seguinte comando:
sudo systemctl start mysqld
- Você receberá uma resposta uma vez que o MySQL iniciar, então use o comando abaixo para checar se ele está funcionando de modo adequado:
sudo systemctl status mysqld
- As informações de status do MySQL serão fornecidas:
Se você ver que o MySQL está ativo e funcionando como no print acima, significa que você concluiu a instalação com sucesso e iniciou o MySQL no seu servidor.
Como configurar o MySQL
Agora que você está com tudo configurado, vamos mostrar alguns comandos e tweaks úteis que você deve saber ao trabalhar com o MySQL.
Como mudar a senha do usuário root no MySQL
Na hora de instalar o MySQL no CentOS 9 Stream, uma senha root temporária é gerada. Use o comando abaixo para vê-la:
sudo grep 'password' /var/log/mysqld.log
Para mudá-la, siga esses passos:
- Primeiramente, execute o seguinte comando:
sudo mysql_secure_installation
- Insira a senha temporária e então a seguinte mensagem vai aparecer:
The existing password for the user account root has expired. Please set a new password.
New password:
Re-enter new password: - Agora, insira uma nova senha com segurança forte.
- Siga as instruções na tela e aperte y para finalizar a configuração. Pronto, você pode mudou a senha do usuário root com sucesso.
Dica
Uma senha forte deve ter 8-12 caracteres e incluir números, caracteres especiais, letras maiúsculas e letras minúsculas.
Como checar a versão atual do MySQL
Uma vez que você tiver instalado o CentOS 9 Stream, é possível testar se tudo foi configurado corretamente ao checar a sua versão. Digite o seguinte comando:
mysql -u root -p
Insira a senha root que você criou e a resposta será parecida com a seguinte:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 22
Server version: 8.0.20
Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.
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.
Como redefinir a senha root do MySQL
Se você quer redefinir a sua senha, o processo é bem simples e direto. Siga os passos abaixo para mudar a sua senha root do MySQL:
- Pare o servidor MySQL com este comando:
sudo systemctl stop mysqld
- Reinicie o MySQL em modo de segurança, ou sem a senha ao digitar:
sudo mysqld_safe --skip-grant-tables
- Pressione ENTER se o servidor MySQL foi iniciado, mas parece que está travado.
- Use o seguinte comando para se reconectar ao MySQL como root:
mysql -uroot
- Para mudar a senha root, use os seguintes comandos:
USE MYSQL;
UPDATE USER SET PASSWORD=PASSWORD(“novasenha”) WHERE USER=’root’;
FLUSH PRIVILEGES;
EXIT - Substitua novasenha com uma senha própria de forte segurança.
- Finalmente, reinicie o MySQL usando:
sudo systemctl start mysqld
- Agora você pode fazer login no MySQL com a sua nova senha.
Como criar um novo usuário e um novo banco de dados MySQL
Como o usuário root no MySQL, você tem acesso total a todos os bancos de dados.
Contudo, se você trabalha com uma equipe, há casos onde você pode precisar aplicar algumas restrições. Nesse caso, é necessário criar uma nova base de dados ou criar usuários com permissões customizadas.
Aqui está como resolver este problema de maneira rápida:
- Use o seguinte comando para criar um novo banco de dados:
CREATE DATABASE novodb
- No lugar de “novodb”, insira o nome desejado para o novo banco de dados.
- Crie um novo usuário executando o comando abaixo:
CREATE USER 'nomedeusuário'@'localhost' IDENTIFIED BY 'senha'
- Troque nomedeusuário e senha pelos valores desejados para criar um novo usuário.
- Se, em vez disso, você quiser deletar um determinado usuário, use o comando:
DROP USER ‘nomedeusuário’@‘localhost’
Gerenciando permissões de usuário do MySQL
Para conceder acesso a um banco de dados ao novo usuário, digite:
GRANT ALL PRIVILEGES ON novodb.* TO 'nomedeusuário'@'localhost'
Você também pode conceder privilégios individualmente, incluindo:
- SELECT – permissão para ler o banco de dados usando o comando select.
- CREATE – para gerar novas tabelas.
- DROP – para remover tabelas.
- DELETE – para remover linhas das tabelas.
- INSERT – para adicionar linhas às tabelas.
- UPDATE – para atualizar as linhas.
- GRANT OPTION – para conceder ou remover os privilégios de outros usuários.
Por exemplo, para conceder o privilégio CREATE, você precisa digitar:
GRANT CREATE ON novodb.* TO 'nomedeusuário'@'localhost'
Por outro lado, se você quiser remover o acesso de alguém, use o seguinte:
REVOKE permission_type ON novodb.* TO 'nomedeusuário'@'localhost'
Você também pode verificar os privilégios atuais de um usuário:
SHOW GRANTS nomedeusuário
Por fim, depois de terminar de gerenciar os usuários, é uma boa ideia redefinir todos os privilégios usando este comando para que as alterações tenham efeito:
FLUSH PRIVILEGES
Outros comandos úteis do MySQL
O MySQL também tem uma lista de outros comandos úteis. Basta digitar \h ou help para visualizar a lista mostrada abaixo:
List of all MySQL commands:
Note that all text commands must be first on line and end with ';'
? (\?) Synonym for `help'.
clear (\c) Clear command.
connect (\r) Reconnect to the server. Optional arguments are db and host.
delimiter (\d) Set statement delimiter. NOTE: Takes the rest of the line as new delimiter.
edit (\e) Edit command with $EDITOR.
ego (\G) Send command to mysql server, display result vertically.
exit (\q) Exit mysql. Same as quit.
go (\g) Send command to mysql server.
help (\h) Display this help.
nopager (\n) Disable pager, print to stdout.
notee (\t) Don't write into outfile.
pager (\P) Set PAGER [to_pager]. Print the query results via PAGER.
print (\p) Print current command.
prompt (\R) Change your mysql prompt.
quit (\q) Quit mysql.
rehash (\#) Rebuild completion hash.
source (\.) Execute an SQL script file. Takes a file name as an argument.
status (\s) Get status information from the server.
system (\!) Execute a system shell command.
tee (\T) Set outfile [to_outfile]. Append everything into given outfile.
use (\u) Use another database. Takes database name as argument.
charset (\C) Switch to another charset. Might be needed for processing binlog with multi-byte charsets.
warnings (\W) Show warnings after every statement.
nowarning (\w) Don't show warnings after every statement.
For server side help, type 'help contents'
mysql>
Conclusão
E é isto! Neste tutorial, você aprendeu a instalar o MySQL em um servidor CentOS 9 Stream. Ao instalar o MySQL, você poderá armazenar seus bancos de dados e gerenciá-los de forma eficiente no servidor.
Não deixe de conferir nossos outros tutoriais sobre hospedagem VPS e deixe um comentário abaixo se tiver alguma dúvida.
Comentários
February 01 2019
Oi!... Se possível add o comando sudo grep 'temporary password' /var/log/mysqld.log para encontrar a primeira senha do root e alterar usando: ALTER USER 'root'@'localhost' IDENTIFIED BY 'NOVASENHA!'; Abs