Busca


imprimir pdf

Como fazer quando já não temos a password root MySQL ?


Temos de reiniciar MySQL com a opção --skip-grant-tables. Com esta opção, já não há direitos sobre as tabelas e toda a gente pode aceder a todas as tabelas. Temos então de aproveitar isto para mudar rapidamente a password root e reiniciar MySQL sem esta opção.

Ligue-se em SSH sobre o seu servidor e siga este procedimento:

- comece por parar o servidor MySQL: # /etc/init.d/mysql stop,

- relance novamente o servidor sem nenhum direito : # safe_mysqld --skip-grant-tables &, se receber a mensagem "command not found", tente com # mysqld_safe --skip-grant-tables &.

- vamos agora ligar-nos à base de dados mysql (sem password visto que os direitos foram desativados) :
[root@julien /]# mysql -u root mysql

Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is *** to server version: ****

Type 'help;' or 'h' for help. Type 'c' to clear the buffer.

mysql>


Está agora sobre a consola de MySQL e pode inserir diretamente comandos em SQL. Para mudar a password, introduza os seguintes comandos :

mysql> UPDATE user SET password=PASSWORD('nova_password') WHERE User="root" AND Host="localhost";
mysql> FLUSH PRIVILEGES;



nova_password representa uma nova password à sua escolha, deve então modificá-la antes de marcar o comando. Pode agora deixar a consola MySQL :

mysql> q


- a password está modificada, podemos parar o servidor MySQL: # killall mysqld,

- e relançá-lo normalmente : # /etc/init.d/mysql start

- para testar a nova password, insira este comando :

[root@julien /]# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is *** to server version: ****

Type 'help;' or 'h' for help. Type 'c' to clear the buffer.

mysql>


A documentação oficial de MySQL:
www.mysql.com/doc/en/Resetting_permissions.html.