Řešení 1:
Nejjednodušší způsob, jak toho dosáhnout, je použít klientskou část souboru ~/.my.cnf a přidat tam přihlašovací údaje.
[client]
user=root
password=somepassword
...
je dobré, aby byl tento soubor čitelný pouze pro uživatele root.
Řešení 2:
Pro mysql 5.7+, pokud nastavíte prázdné heslo pro úvodní nastavení, mysql automaticky použije auth_socket
jako strategie. Pokus o aktualizaci hesla bez změny strategie nebude mít žádný výsledek. Vždy se můžete přihlásit bez použití hesla, pokud je vašemu uživateli root
.
Řešení Spusťte následující příkaz pro změnu strategie ověřování a nastavení hesla
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY ''
odkaz:https://www.percona.com/blog/2016/03/16/change-user-password-in-mysql-5-7-with-plugin-auth_socket/
Řešení 3:
Od MySQL 5.6.6 můžete použít mysql_config_editor k vytvoření zašifrovaného souboru, který vás automaticky přihlásí:
mysql_config_editor set --login-path=client --host=localhost --user=root --password
Poté na výzvu zadejte heslo.
Poznámka:Pokud vaše heslo obsahuje „#“ a případně další znaky, použijte při zadávání hesla jednoduché uvozovky.