我一段时间安装了mySQL,但现在安装了MAMP,其中还包括mySQL.我想在这个新的mySQL实例中更改root用户密码,但我无法使其工作:
mysqladmin -u root -p --port=8889 --protocol=TCP password myNewPassword
Run Code Online (Sandbox Code Playgroud)
(我必须使用端口#和TCP协议,否则它只是尝试连接到我的旧mySQL实例)
我得到的错误是:
mysqladmin:[警告]在命令行界面上使用密码可能不安全.警告:由于密码将以纯文本形式发送到服务器,因此请使用ssl连接以确保密码安全.mysqladmin:无法更改密码; 错误:'您的SQL语法有错误; 查看与您的MySQL服务器版本相对应的手册,以便在'()IDENTIFIED BY'myNewPassword''第1行附近使用正确的语法
我究竟做错了什么?
来自MAMP FAQ:
/Applications/MAMP/Library/bin/mysqladmin -u root -p password <NEWPASSWORD>
Run Code Online (Sandbox Code Playgroud)
替换为新密码.您需要提供现有的root用户密码(例如"root").
之后,您还需要更改phpMyAdmin的密码以及与MAMP一起使用的其他脚本.您可以在文件/Applications/MAMP/bin/phpMyAdmin/config.inc.php中更改phpMyAdmin的密码.
结果发现 ALTER USER 仅适用于 mySQL 5.7.x;对于 MAMP 4.1.1 (v 5.6.35) 中的 mySQL 版本:
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('cleartext password');
FLUSH PRIVILEGES;
Run Code Online (Sandbox Code Playgroud)