当我尝试使用以下命令重置ubuntu系统上的MySQL root密码时
update user set password=PASSWORD("newPwd") where User="root";
我将错误视为
ERROR 1054 (42S22): Unknown column 'password' in 'field list'
答案 0 :(得分:4)
在MySQL 5.7中,mysql.user表字段中的密码字段已被删除,现在字段名称为'authentication_string'。
按照以下步骤重置Ubuntu上的“root”密码
停止服务
sudo /etc/init.d/mysql stop
启动没有密码的MySQL
sudo mysqld_safe --skip-grant-tables &
**Note: the following command didn't work for me**
mysqld --skip-grant-tables &
连接MySQL
mysql -uroot
设置新的MySQL root密码
mysql> use mysql;
mysql> update user set authentication_string=password('yourNewPwd') where user='root';
mysql> flush privileges;
mysql> quit
重新启动mysql服务
sudo /etc/init.d/mysql stop
sudo /etc/init.d/mysql start
现在,您可以使用更新后的密码登录
mysql -u root -p