HolyHosting
Equipe Holy

Um servidor de banco de dados MySQL e frequentemente a primeira escolha para desenvolvedores e qualquer pessoa interessada em testar uma linguagem de consulta estruturada. O MySQL inclui numerosas funcionalidades que o tornam confiavel, seguro e eficiente.
No entanto, existem maneiras de melhorar ainda mais a seguranca do servidor MySQL. Uma delas e criar usuarios de banco de dados com acesso restrito.
Este tutorial explicara por que voce deve criar contas de usuario separadas no MySQL e como usar o comando MySQL SHOW USERS no seu VPS Linux.
Por que Criar Usuarios no Servidor MySQL
Como Mostrar Usuarios no Banco de Dados MySQL no Linux
1. Faca Login como Usuario Root do MySQL
2. Use a Consulta MySQL SHOW USERS
3. Ver Mais Informacoes de Usuario do MySQL (Opcional)
FAQ sobre Mostrar Usuarios no MySQL
Como Posso Ver Todos os Usuarios e Senhas do MySQL?
Como Mostro Usuarios no MySQL MariaDB?
Onde os Usuarios sao Armazenados no MySQL?
Por que Criar Usuarios no Servidor MySQL
Quando usuarios ou administradores de bancos de dados instalam o MySQL, o primeiro usuario criado e o usuario root, ou seja, o administrador do MySQL. O usuario root tera permissoes para fazer tudo no banco de dados MySQL.
Embora ter todas as permissoes possa parecer benefico, isso tem suas proprias vulnerabilidades de seguranca, e compartilhar o usuario root entre varias pessoas e perigoso. Hackers frequentemente tentam fazer login como usuario root e roubar as informacoes hospedadas ou ate destruir todo o servidor MySQL junto com seus dados.
Portanto, os administradores de sistema criam usuarios com permissoes especificas em alguns bancos de dados. Em outras palavras, se as credenciais de uma conta forem comprometidas, o impacto sera minimo e gerenciavel.
Como Mostrar Usuarios no Banco de Dados MySQL no Linux
Ao contrario dos comandos SHOW DATABASES ou SHOW TABLES que exibem todos os bancos de dados ou tabelas imediatamente, o comando SHOW USERS nao existe no MySQL.
Embora nao exista tal comando, os usuarios podem usar uma consulta MySQL e obter uma lista completa de usuarios em um servidor de banco de dados MySQL especifico.
Siga os passos abaixo para saber mais.
1. Faca Login como Usuario Root do MySQL
Comece fazendo login no VPS via SSH como usuario root. Feito isso, entre na linha de comando do MySQL com este comando:
```bash
sudo mysql -u root -p
```
Em seguida, digite sua senha root do MySQL.
Importante! Observe que as senhas root do sistema e do MySQL sao distintas e podem ser diferentes.
Quando voce estiver no console do MySQL como usuario root, podera executar consultas para mostrar outros usuarios do MySQL.
2. Use a Consulta MySQL SHOW USERS
Use a seguinte consulta para mostrar os usuarios do MySQL criados no servidor do banco de dados:
```sql
SELECT user FROM mysql.user;
```
Como resultado, voce vera a lista de todos os usuarios criados no MySQL.
Observe que pode haver usuarios duplicados. Isso ocorre porque o MySQL filtra o acesso a um servidor com base no endereco IP de origem.
Voce tambem pode adicionar uma coluna de host para ver ainda mais informacoes usando o seguinte comando:
```sql
SELECT user, host FROM mysql.user;
```
Com isso, voce podera ver os usuarios do MySQL e a qual host ou endereco IP eles tem permissao de acesso. Em nosso caso, todos os usuarios sao de um banco de dados local:
Consulta MySQL mostrando todos os usuarios junto com os hosts.
3. Ver Mais Informacoes de Usuario do MySQL (Opcional)
Se voce precisa de mais informacoes sobre os usuarios do MySQL, a consulta pode ser expandida com a ajuda de consultas MySQL.
Por exemplo, o seguinte comando imprimira todas as informacoes possiveis da tabela de usuarios:
```sql
SELECT * FROM mysql.user;
```
A consulta MySQL mostra todas as informacoes possiveis de uma tabela do banco de dados MySQL
No entanto, essa saida pode parecer desorganizada demais para entender. Portanto, recomendamos restringir a pesquisa usando consultas mais especificas.
Aqui estao alguns dos casos de uso mais populares:
Pre-visualizacao de Colunas da Tabela
A seguinte consulta mostrara uma pre-visualizacao das colunas da tabela de usuarios. E especialmente util se os usuarios desejam verificar informacoes sobre uma tabela especifica.
```sql
DESC mysql.user;
```
Consulta MySQL para obter uma pre-visualizacao das colunas da tabela de usuarios.
Mostrar Apenas Nomes de Usuario Unicos
Para omitir nomes de usuario repetidos, a seguinte consulta pode ser usada:
```sql
SELECT DISTINCT user FROM mysql.user;
```
Consulta MySQL para mostrar apenas nomes de usuario unicos em um dado banco de dados MySQL.
Status de Expiracao de Senha e Bloqueio de Conta
Para verificar o status de expiracao de senha e o status de bloqueio de conta, use esta consulta:
```sql
SELECT user, account_locked, password_expired FROM mysql.user;
```
Consulta MySQL para mostrar o status de expiracao de senha e o status de bloqueio de conta.
Mostrar Usuarios Atuais e Usuarios Atualmente Conectados
O usuario atual pode ser exibido com a seguinte consulta:
```sql
SELECT current_user();
```
Consulta MySQL para mostrar o usuario atual.
Se precisar de mais informacoes, voce pode modificar a consulta para mostrar os usuarios atualmente conectados com seus status. Este comando e util para encontrar usuarios inativos que consomem muitos recursos.
```sql
SELECT user, host, command FROM information_schema.processlist;
```
Consulta MySQL mostrando os usuarios atualmente conectados junto com seus status.
Conclusao
Gerenciar um servidor de banco de dados pode ser um trabalho desafiador. Portanto, os administradores de banco de dados devem ter cuidado ao criar e gerenciar permissoes de usuario.
O comando MySQL SHOW USERS permite que os administradores vejam os usuarios do MySQL junto com outras informacoes importantes.
Para resumir, cobrimos o basico de como mostrar os usuarios do MySQL vinculados a um banco de dados e aprendemos como:
- Listar todos os usuarios criados em um dado banco de dados MySQL.
- Obter uma pre-visualizacao das colunas de tabela do banco de dados MySQL.
- Mostrar apenas nomes de usuario unicos em uma tabela.
- Verificar o status de expiracao de senhas e o status de bloqueio de contas.
- Mostrar usuarios atuais e usuarios atualmente conectados em um banco de dados MySQL.
Esperamos que voce ache este tutorial util. Se tiver perguntas adicionais ou comentarios, nos informe na secao de comentarios abaixo.
Todas as informações foram cuidadosamente documentadas e disponibilizadas no nosso mais recente tutorial do YouTube.
O plugin SkinRestorer pode ser muito util se o que voce esta buscando e utilizar seu Servidor no modo no-premium. Nesse caso, ao configura-lo como "online-mode:false"
O arquivo php.ini e o arquivo de configuracao principal do PHP. Aprenda o que e, onde encontra-lo e como editar suas configuracoes.