Erro 1045 (28000) acesso negado para localhost raiz do usuário (resolvido)

Publicados: 2023-03-14

“Erro 1045 (28000) acesso negado para host local raiz do usuário” é um erro comumente encontrado ao tentar acessar o MySQL através do WordPress CMS. No entanto, esse erro também pode ocorrer em outras situações.

O erro que você está encontrando sugere que o usuário “root” não possui as autorizações necessárias para acessar o banco de dados do localhost. As razões por trás desse problema podem ser múltiplas, incluindo uma senha incorreta, um nome de usuário incorreto ou permissões inadequadas concedidas ao usuário.

Aqui estão algumas etapas que você pode seguir para resolver esse erro

1. Verifique o nome de usuário e a senha

Certifique-se de estar usando o nome de usuário e a senha corretos. O nome de usuário deve ser “root” e a senha deve ser aquela que você definiu durante o processo de instalação.

Caso você esteja usando o WordPress, você deve verificar seu arquivo wp-config.php . O arquivo pode ser encontrado na pasta principal do WordPress.

wp-config.php

Após abrir o arquivo e tentar editá-lo (Visual Studio Code) você terá esta tela:

editar wp-config.php nome de usuário e senha do banco de dados

Verifique DB_USER e DB_PASSWORD se eles tiverem os valores corretos

 /** Database username */ define( 'DB_USER', 'root' );
 /** Database password */ define( 'DB_PASSWORD', 'root' );

Se você não sabe qual é o seu nome de usuário e senha para o banco de dados, acesse cPanel > Banco de dados > Mysql e verifique.

como acessar banco de dados mysql com cpanel

Para alterar a senha do banco de dados do WordPress, siga o tutorial: Alterar senha do WordPress no PHPMyAdmin

2. Verifique se o usuário possui os privilégios necessários

Verifique se o usuário “root” possui os privilégios necessários para acessar o banco de dados.

Passo 1: Primeiro, você deve abrir seu terminal e escrever ssh [email protected]

 ssh [email protected]

Etapa 2: após o login bem-sucedido, anote este comando

 mysql -uroot -p

Etapa 3: depois de adicionar sua senha, você pode começar a adicionar seu comando no prompt do mysql

Passo 4: Você pode usar o seguinte comando para verificar os privilégios:

 SHOW GRANTS FOR 'root'@'localhost';

Isso mostrará a lista de privilégios que o usuário “root” possui para o servidor “localhost”. Se o usuário não tiver os privilégios necessários, você pode concedê-los usando o seguinte comando:

 GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'password';

Nota: Substitua 'senha' pela senha que você deseja usar.

Para verificar se o usuário possui os privilégios necessários usando o phpMyAdmin, siga estas etapas:

  1. Faça login na sua conta phpMyAdmin.
  2. Clique na guia "Contas de usuário".
  3. Selecione na raiz do usuário (ou aquele que você deseja alterar a senha)
  4. Clique no link Editar privilégios
  5. Aqui você pode ver a lista de privilégios concedidos ao usuário.
  6. Certifique-se de que o usuário tenha os privilégios necessários para acessar o banco de dados.
  7. Se o usuário não tiver os privilégios necessários, você pode concedê-los marcando as caixas de seleção relevantes e clicando no botão “Ir”.
  8. Depois de conceder os privilégios necessários, tente acessar o banco de dados novamente para ver se o problema foi resolvido.
link de privilégios de edição do phpmyadmin

As configurações na área destacada devem ser verificadas:

privilégios de usuário do phpmyadmin

Nota: Se você não conseguir conceder os privilégios necessários por meio do phpMyAdmin, talvez seja necessário acessar a interface de linha de comando do MySQL para conceder os privilégios.

3. Verifique o status do servidor MySQL

Certifique-se de que o servidor MySQL esteja em execução. Você pode verificar o status do servidor executando o seguinte comando após o login no shell do servidor:

 systemctl status mysql

Se o servidor não estiver em execução, inicie-o usando o seguinte comando:

 systemctl start mysql

Para verificar o status do Mysql na hospedagem cPanel, você deve fazer login no painel de hospedagem. Outra forma é entrar em contato diretamente com seu provedor de hospedagem.

4. Verifique se o servidor MySQL está escutando na porta correta

Certifique-se de que o servidor MySQL esteja escutando na porta correta. A porta padrão do MySQL é 3306 .

Para verificar se o servidor MySQL está escutando na porta correta, você pode seguir estas etapas:

1. Abra um terminal ou prompt de comando em seu servidor onde o MySQL está instalado.

2. Conecte-se ao servidor MySQL usando o cliente de linha de comando. Você pode usar o seguinte comando, substituindo username e password por suas credenciais reais do MySQL:

 mysql -u username -p

3. Assim que estiver conectado ao servidor MySQL, digite o seguinte comando para exibir o número da porta na qual o servidor MySQL está escutando:

SHOW VARIABLES LIKE 'port';

Este comando exibirá o número da porta na qual o servidor MySQL está escutando. Por padrão, o MySQL escuta na porta 3306.

Você também pode verificar o número da porta no arquivo de configuração do MySQL.

O arquivo de configuração geralmente é denominado my.cnf ou my.ini , e está localizado no diretório de instalação do MySQL.

Para encontrar o diretório de instalação do MySQL, você pode seguir estas etapas:

1. Abra um terminal ou prompt de comando em seu servidor onde o MySQL está instalado.

2. Digite o seguinte comando para verificar se o MySQL está instalado:

which mysql

Se o MySQL estiver instalado, este comando exibirá o caminho para o arquivo executável mysql , caso contrário, você receberá uma mensagem de erro.

Se o MySQL estiver instalado, você pode usar o comando which novamente para encontrar o diretório de instalação. Digite o seguinte comando, substituindo /path/to/mysql pelo caminho para o arquivo executável mysql :

 which mysql | xargs readlink -f | sed "s|bin/mysql$||"

Este comando exibirá o diretório de instalação do MySQL. Você pode usar este diretório para localizar o arquivo de configuração do MySQL ( my.cnf ou my.ini ) e outros arquivos e diretórios do MySQL.

Como alternativa, se você tiver acesso ao cliente MySQL, também poderá executar a seguinte consulta para localizar o diretório de instalação do MySQL:

 SELECT @@basedir;

Isso exibirá o diretório de instalação do MySQL.

Você também pode verificar o arquivo de configuração do MySQL para verificar o número da porta em que o MySQL está configurado para escutar. O arquivo de configuração geralmente é denominado my.cnf ou my.ini , e está localizado no diretório de instalação do MySQL.

my.cnf e porta sql

Abra o arquivo de configuração com um editor de texto e procure o parâmetro da porta. O valor deste parâmetro especifica o número da porta que o MySQL está configurado para escutar.

Se o servidor MySQL não estiver escutando na porta correta, você pode alterar o parâmetro da porta no arquivo de configuração e reiniciar o servidor MySQL para aplicar as alterações.

Não se esqueça de reiniciar o serviço Mysql se você alterou a porta:

 service mysql restart

5. Redefina a senha raiz

Se nenhuma das etapas acima funcionar, você pode tentar redefinir a senha do root. Você pode fazer isso seguindo as etapas deste artigo:

https://dev.mysql.com/doc/refman/8.0/en/resetting-permissions.html

Nota: Este método requer que você tenha acesso ao arquivo de configuração do MySQL e a capacidade de reiniciar o servidor MySQL.

Você pode estar interessado em ler:

Como corrigir o erro “Falha na instalação: não foi possível criar o diretório” no WordPress

Como corrigir o WordPress preso no modo de manutenção (RESOLVIDO)

Como corrigir “Falha na atualização. A resposta não é uma resposta JSON válida”

Como corrigir “Erro ao estabelecer uma conexão com o banco de dados”? - 2023