Como criar um usuário no phpMyAdmin com acesso apenas a bancos específicos (Passo a passo completo)
Neste tutorial, você vai aprender como criar um usuário no phpMyAdmin e conceder permissões somente para os bancos de dados que realmente pertencem a ele, garantindo mais segurança e organização no seu servidor.
📌 Por que isso é importante?
Evitar dar acesso total (ALL PRIVILEGES) a todos os bancos é uma boa prática de segurança, principalmente em servidores com múltiplos sistemas ou clientes.
✅ Pré-requisitos
- Ter acesso ao phpMyAdmin
- Estar logado com um usuário com privilégios administrativos (ex:
root)
🚀 Passo 1: Acessar o phpMyAdmin
- Abra seu navegador
- Acesse o phpMyAdmin (exemplo):
http://seu-servidor/phpmyadmin - Faça login com seu usuário administrador
👤 Passo 2: Criar um novo usuário
- No menu superior, clique em “Contas de usuários”
- Clique em “Adicionar conta de usuário”
Agora preencha os dados:
- Nome do usuário: ex:
usuario_cliente - Host:
%→ permite acesso de qualquer lugar (não recomendado em produção)localhost→ mais seguro (recomendado)
- Senha: defina uma senha forte
⚠️ Importante (MUUUUITO importante)
Na seção:
👉 “Privilégios globais”
✔️ NÃO marque NENHUM privilégio global
Isso garante que o usuário não terá acesso a todos os bancos automaticamente.
NÃO MARQUE nenhuma das DUAS CAIXAS.
💾 Passo 3: Criar o usuário
- Role até o final da página
- Clique em “Executar”
Pronto, o usuário foi criado — mas ainda não tem acesso a nenhum banco.
🗄️ Passo 4: Conceder acesso apenas aos bancos corretos
Agora vamos liberar acesso somente aos bancos específicos.
Método 1 (Recomendado)
- Vá novamente em “Contas de usuários”
- Encontre o usuário criado
- Clique em “Editar privilégios”
➕ Adicionar banco específico
- Role até a seção:
👉 “Privilégios específicos do banco de dados” - No campo “Adicionar privilégios ao seguinte banco de dados”:
- Digite o nome do banco (ex:
cliente_db)
- Digite o nome do banco (ex:
- Clique em “Executar”
🔐 Passo 5: Definir permissões do banco
Agora você verá uma tela com permissões.
Marque apenas o necessário, por exemplo:
✔️ Para sistemas comuns (CRUD):
- SELECT
- INSERT
- UPDATE
- DELETE
- CREATE
- ALTER
- INDEX
❌ Evite marcar:
- DROP (a menos que realmente precise)
- GRANT (não necessário para usuários comuns)
💡 Dica de segurança
Se o banco pertence a um sistema específico:
👉 Crie um usuário exclusivo por sistema
Exemplo:
| Sistema | Banco | Usuário |
|---|---|---|
| Loja | loja_db | user_loja |
| ERP | erp_db | user_erp |
🔄 Passo 6: Repetir para outros bancos (se necessário)
Se o usuário precisar acessar mais de um banco:
- Repita o processo de adicionar privilégios para cada banco
🧪 Passo 7: Testar o acesso
Teste com esse usuário:
- Faça logout do phpMyAdmin
- Acesse com o novo usuário
- Verifique:
- Ele só enxerga os bancos permitidos
- Consegue fazer operações normalmente
🔒 Boas práticas finais
- Nunca use
rootem aplicações - Sempre limite acesso por banco
- Use
localhostsempre que possível - Utilize senhas fortes
- Revise permissões periodicamente
🧰 Alternativa via SQL (Opcional)
Se preferir, você pode fazer tudo via SQL:
CREATE USER 'usuario_cliente'@'localhost' IDENTIFIED BY 'senha_forte';
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER, INDEX
ON cliente_db.* TO 'usuario_cliente'@'localhost';
FLUSH PRIVILEGES;
🎯 Conclusão
Seguindo esse processo, você garante que cada usuário tenha acesso somente ao que precisa, aumentando a segurança e evitando problemas futuros.