Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Alterar e redefinir a senha raiz do MySQL

Existem muitas maneiras de redefinir e alterar a senha de root do banco de dados mySQL, caso a senha seja esquecida ou perdida, ou você simplesmente queira tornar a senha mais segura com algoritmo complexo e alteração regular. As instruções a seguir explicam em detalhes o caminho alternativo na última parte do guia mencionado acima, onde nenhum arquivo adicional precisa ser criado:
  1. Faça login como root na máquina Windows ou tipo Unix (Unix, Linux ou BSD) com o servidor MySQL.
  2. Pare o servidor MySQL usando um dos seguintes comandos:
    Linux:
    /etc/rc.d/init.d/mysql stop

    FreeBSD:
    /usr/local/etc/rc.d/mysql-server.sh stop
  3. Abra o script de inicialização do servidor mysql (ou seja, mysql-server.sh ou mysql que é o arquivo executado para iniciar ou parar o servidor MySQL).
  4. ADICIONAR –skip-grant-tables até o final da linha que contém o mysqld_safe comando como seu parâmetro.
  5. Inicie o servidor MySQL com o seguinte comando:
    Linux:
    /etc/rc.d/init.d/mysql start

    FreeBSD:
    /usr/local/etc/rc.d/mysql-server.sh start
  6. Como alternativa, inicie o servidor MySQL diretamente e pule a edição com o seguinte comando (se você estiver usando esta etapa, não precisará modificar o script de inicialização do MySQL):
    mysqld_safe --skip-grant-tables &

    Dependendo do seu ambiente de caminho, você pode precisar apontar para o diretório correto onde mysqld_safe está.
  7. Execute os seguintes comandos para fazer login como usuário mysql e conectar-se ao banco de dados de usuário/permissão mysql:
    # mysql -u root mysql
  8. Execute as consultas de atualização para alterar a senha do MySQL:
    mysql> UPDATE user SET Password=PASSWORD('newrootpassword') WHERE User='root';
    mysql> FLUSH PRIVILEGES;

    Nota:Substitua newrootpassword com a nova senha de root para o servidor MySQL. Os privilégios de liberação são necessários para que a alteração de senha tenha efeito imediato.
  9. Saia do cliente de banco de dados mysql digitando exit .
  10. Pare o servidor MySQL com os comandos listados na etapa 2.
  11. Abra a edição do script de inicialização do servidor mysql na etapa 3 novamente e REMOVA as –skip-grant-tables parâmetro que foi adicionado.
  12. Inicie o servidor MySQL usando o comando da etapa 5 ou 6.

Para usuários do Redhat Linux, use as seguintes instruções como usuário root da máquina Redhat Linux:
  1. Parar o processo MySQL usando o comando:
    # killall mysqld
  2. Inicie o servidor MySQL com as seguintes opções:
    # /usr/libexec/mysqld -Sg --user=root &
  3. Inicie o cliente MySQL:
    # mysql

    Você deverá ver a seguinte mensagem:

    Bem-vindo ao monitor MySQL. Os comandos terminam com; ou g.
    Seu ID de conexão MySQL é 1 para a versão do servidor:3.xx.xx

    Digite 'help;' ou 'h' para obter ajuda. Digite 'c' para limpar o buffer.

    mysql>
  4. Usar banco de dados mysql:
    mysql> USE mysql 

    Você deverá ver a seguinte mensagem:

    Lendo as informações da tabela para completar os nomes das tabelas e colunas
    Você pode desativar esse recurso para obter uma inicialização mais rápida com -A

    Banco de dados alterado
  5. Em seguida, atualize a senha do usuário root com o seguinte comando:
    UPDATE user SET password=password("newpassword") WHERE user="root";

    Substituir nova senha com a senha desejada. Você deverá ver a seguinte mensagem:

    Consulta OK, 2 linhas afetadas (0,03 s)
    Linhas correspondidas:2 alteradas:2 avisos:0

    As linhas afetadas podem ser diferentes, mas o Query OK deve estar lá.
  6. Descarregue os privilégios do banco de dados para recarregá-lo a fim de tornar as alterações efetivas:
    mysql> flush privileges; 

    Você deve obter o seguinte resultado:

    Consulta OK, 0 linhas afetadas (0,02 s)
  7. Saia do cliente MySQL digitando exit .
  8. Mate o processo do servidor MySQL digitando killall mysqld .
  9. Em seguida, inicie o MySQL novamente:
    /etc/init.d/mysqld start