Criar um utilizador de base de dados e dar-lhe os privilégios certos

Uma base de dados sem utilizador não serve a ninguém, e um utilizador com privilégios a mais é uma porta aberta. No cPanel faz-se em MySQL Databases: cria a base, cria o utilizador, liga os dois e escolhe o que esse utilizador pode fazer. Demora três minutos.

O cPanel acrescenta ao nome da base e do utilizador o prefixo da conta, seguido de um sublinhado. Se a conta se chama abc e escreve loja, o nome verdadeiro é abc_loja. É esse nome completo que vai para a aplicação.

Passo a passo

1 No cPanel, abra MySQL Databases. Em Create New Database escreva um nome e clique em criar.
2 Mais abaixo, em MySQL Users, escolha um nome e uma palavra-passe forte. O gerador de senhas faz uma boa. Guarde-a já, porque não a voltará a ver.
3 Em Add User To Database, escolha o utilizador e a base e clique em Add.
4 Aparece a lista de privilégios. Para uma aplicação (WordPress, loja, aplicação sua) marque ALL PRIVILEGES nesta base. Para uma consulta de relatórios, marque só SELECT.
5 Na aplicação, use três valores: o nome completo da base, o nome completo do utilizador e a palavra-passe. O servidor é localhost.

Que privilégios dar

Privilégio O que permite Quando dar
SELECT Ler dados. Sempre. Sozinho, serve para relatórios e painéis só de leitura.
INSERT, UPDATE, DELETE Gravar, alterar e apagar linhas. A qualquer aplicação que escreva dados.
CREATE, ALTER, DROP, INDEX Mudar a estrutura das tabelas. Instalar e actualizar aplicações. Um utilizador só de leitura não precisa.
ALL PRIVILEGES Tudo o que o cPanel permite, só nesta base. O normal para a aplicação que é dona da base.
O que corre mal: muda a palavra-passe do utilizador no cPanel e esquece-se de a mudar no ficheiro de configuração da aplicação. O site passa a mostrar Error establishing a database connection. Veja as causas, por ordem. Outra armadilha: apagar o utilizador não apaga a base, e apagar a base não apaga o utilizador.

Mais de um utilizador na mesma base

Pode ligar vários utilizadores à mesma base, cada um com os seus privilégios. Por exemplo: um utilizador para o site, com todos os privilégios; outro só com SELECT, para quem consulta números; e outro só com SELECT e LOCK TABLES, para a cópia automática. Se uma palavra-passe for divulgada, muda só essa. Em MySQL Databases, a secção Current Databases mostra os utilizadores ligados a cada base e deixa remover a ligação sem apagar o utilizador.

Um utilizador por aplicação. Se uma aplicação for comprometida, só perde a base dela. E não use a palavra-passe do cPanel para a base de dados: são coisas diferentes e devem ter palavras-passe diferentes. Veja onde cada aplicação guarda os dados de ligação.

Criou o utilizador e a aplicação continua sem entrar? Diga-nos o nome da base e a mensagem de erro e vamos ver.

Abrir um pedido de suporte

VEJA TAMBÉM

Criar bases de dados e usar o phpMyAdmin

Erro de ligação à base de dados: as causas por ordem

Gerador de senhas

PRODUTO RECOMENDADO

Alojamento de sites com cPanel

Domínio e SSL incluídos, cópias diárias e o painel que já conhece. desde $6.60/mês (plano de 3 anos, com cupão)

Ver planos
  • 0 Utilizadores acharam útil
Esta resposta foi útil?