我尝试了多个StackOverflow上的解决方案,但都没有成功。我在Mac OSX(Sierra 10.12.3)上尝试创建新数据库和用户。从终端输入:
mysql -u root
它输出了这个错误:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
为了尝试解决这个问题,我从“系统偏好设置”中停止了mysql,然后从终端键入:
sudo mysqld_safe —skip-grant-tables
我打开了第二个选项卡,输入:
mysql -u root
然后从 MySQL 中:
update mysql.user set password_expired = 'N', authentication_string=PASSWORD('newpassword') where user = 'root';
flush privileges;
我随后重新启动了计算机(使用 CMD + C 杀死进程无效)。 重新启动后,尝试 mysql -u root
仍然出现相同的错误。
我可以通过 MySQL 客户端和非 root 用户访问 mysql。
感谢任何帮助。
mysql -u
命令,有的时候带上-p
参数,有的时候不带,但是两种情况都会显示错误。 - Alan P.SET PASSWORD FOR
语法? - spencer7593