Recuperação da senha de root em MySQL
Colaboração: Ronie Ramos de Oliveira
Data de Publicação: 30 de Setembro de 2009
Perdi minha senha de root do BD Mysql, entrei no site da mysql e segui todas as informacoes pra recuperar a senha, mas não estou conseguindo. Quando subo o Mysqld com a opção -Sg (Skip Grant Tables), o sistema volta a funcionar, mas acredito que essa não seja a melhor forma. Já tentei dar Flush privileges, mas nada feito. (Pergunta enviada por Clóvis Tristão)
Resposta por Ronie Ramos de Oliveira
Deveria funcionar com o --skip-grant-tables
Experimente especificar a diretiva --skip-grant-tables no seu arquivo de configuração de ativação do mysqld.
Exemplo:
- Pare o serviço mysqld
- Tente ativá-lo novamente com a opção
--skip-grant-tables
$bindir/safe_mysqld --datadir=$datadir --pid-file=$pid_file --log-bin --skip-grant-tables &
- Forneça uma uma nova senha para o usuário root
- Pare novamente o serviço mysqld
- Ative-o novamente retirando a opção
--skip-grant-tables - Tente acessar com a nova senha fornecida.
Ou ainda:
- Pare o serviço mysqld
- Edite o script de inicialização do mysql colocando a diretiva
--skip-grant-tables. - Inicie o mysql.
- Entre no mysql, como root:
> mysql -u root
- Altere a senha do usuário root:
> update user set password=password('nova-senha') where user='root'; > flush tables; > flush privileges; > quit; - Pare novamente o serviço mysqld
- Edite o script de inicialização novamente e retire o --skip-grant-tables.
- Inicie o mysql e tente acessá-lo com a nova senha do root.
Como esclarecimento adicional, transcrevo a seguir o trecho abaixo retirado do manual MySQL 5.4 Reference Manual.
--skip-grant-tables- This option causes the server to start without using the privilege system at all, which gives anyone with access to the server unrestricted access to all databases. You can cause a running server to start using the grant tables again by executing mysqlad-min flush-privileges or mysqladmin reload command from a system shell, or by issuing a MySQL FLUSH PRIVILEGES statement after connecting to the server. This option also suppresses loading of plugins, user-defined functions (UDFs), and scheduled events. To cause plugins to be loaded anyway, use the--plugin-loadoption.
--skip-grant-tablesis unavailable if MySQL was configured with the--disable-grant-optionsoption.
Ronie Ramos de Oliveira
Este artigo foi extraído do sistema Rau-Tu de Perguntas e Respostas sobre Bancos de Dados Livres, mantido pelo Centro de Computação da Unicamp.
Veja a relação completa dos artigos da Bancos de Dados Livres
Para se manter atualizado sobre as novidades desta coluna, consulte sempre o newsfeed RSS
Para saber mais sobre RSS, leia o artigo O Padrão RSS - A luz no fim do túnel.



