运行 Ubuntu Server 14.04,使用 MySQL APT 存储库安装 MySQL 5.7。我无法使用“root”用户从用户帐户 ( $
) 访问 MySQL,但我可以使用sudo
或sudo su -
( #
)。MySQL“root”用户当然可以正常工作 - 我能root
使用我的密码以( ) 身份登录#
。
除自定义“root”密码外,所有 MySQL 配置均为默认。“root”密码更新为# echo "ALTER USER 'root'@'localhost' IDENTIFIED BY '$MYSQLPASS'" | mysql
。
如果上述命令和安装 MySQL 会影响默认值,则它们都是作为配置步骤自动完成的。在升级之前,我能够使用“root”登录 MySQL $
,但我没有看到与此相关的任何 MySQL 特定更改。
我如何才能再次从用户帐户以“root”身份登录 MySQL?
答案1
- 停止mysql服务器(
service mysql stop
或者ps aux | grep mysql
确定PID然后kill -9 PID
) mysqld_safe --skip-grant-tables
UPDATE mysql.user SET plugin = 'mysql_native_password' WHERE User = 'root'
修复 root PW 不起作用的问题update mysql.user set authentication_string=password('YOURNEWPASSWORD') where user='root';
killall -9 mysqld_safe
service mysql start
答案2
UPDATE mysql.user SET plugin = 'mysql_native_password' WHERE User = 'root'
前ALTER USER ...
设置密码的“命令,然后flush privileges
。