Instalei o MySQL 5.7.2 no CentOS 6.9. Em outros sistemas (Debian, Arch), quando instalei o mysql, ele solicitou a senha root no processo de instalação, mas neste caso não solicitou uma senha. Então eu tentei entrar no shell mysql usando a senha em branco. Mas o mysql relatou a mensagem Acesso negado .
Então eu tentei definir uma nova senha no modo de segurança do mysql.
$ service mysqld stop
$ mysql_safe --skip-grant-tables &
$ mysql -u root
mysql > USE mysql;
mysql > UPDATE user SET authentication_string = PASSWORD('mypass') WHERE User='root';
mysql > FLUSH PRIVILEGES;
(Algumas pessoas instruíram a usar a coluna senha . Mas eu não achei essa coluna na tabela usuário . Então eu usei a coluna authentication_string )
Funcionou perfeitamente. Eu posso logar como root no shell mysql usando minha nova senha.
Então eu instalei o phpmyadmin . Quando tentei logar no phpmyadmin com minhas credenciais mysql ele relatou o seguinte erro:
1862 - Your password has expired. To log in you must change it using a client that supports expired passwords.
mysqli_real_connect(): (HY000/1862): Your password has expired. To log in you must change it using a client that supports expired passwords.
Para resolver isso eu loguei no shell mysql e tentei fazer isso:
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
Ele relatou o seguinte erro:
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
Então eu tentei seguir no shell mysql
mysql > ALTER USER 'root'@'localhost' IDENTIFIED BY 'mypass';
Mas relatou o seguinte erro:
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
Então eu tentei redefinir minha senha usando mysql_secure_installation . Também está relatando o mesmo tipo de erro:
... Failed! Error: Your password does not satisfy the current policy requirements
Agora estou preso. Qual é o problema? Como posso resolver esse problema? Obrigado antecipadamente!