这里写自定义目录标题
基本信息
Server version: 5.7.32-0ubuntu0.18.04.1 (Ubuntu)
错误 :
~$ mysql -u root -p
Enter password:
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
操作步骤
方式1 - 操作步骤
- 编辑配置文件
/etc/mysql/mysql.conf.d/mysqld.cnf
,在段落[mysqld]
增加行skip-grant-tables
- 重新启动
MySQL
service mysql restart
- 重新设置
MySQL
根用户root
的密码## 登录 mysql, 此时并不真正需要输入密码,回车直接跳过密码输入即可进入 MySQL 控制台 mysql -uroot -p ## 切换到 mysql 数据库 use mysql; ## 这里可以通过如下查询语句可以看到 root 的密码验证方式是 auth_socket SELECT User, Host, plugin FROM mysql.user; ## +------------------+-----------+-----------------------+ ## | User | Host | plugin | ## +------------------+-----------+-----------------------+ ## | root | localhost | auth_socket | ## | mysql.session | localhost | mysql_native_password | ## | mysql.sys | localhost | mysql_native_password | ## | debian-sys-maint | localhost | mysql_native_password | ## +------------------+-----------+-----------------------+ ## 4 rows in set (0.00 sec) ## 更新 root 密码和密码验证方式 update user set authentication_string=PASSWORD('ThisIs0neC0mplexPasswodString.'), plugin="mysql_native_password" where user='root'; ## 更新权限配置 flush privileges; ## 这里可以通过如下查询语句判断以上更新成功 SELECT User, Host, plugin FROM mysql.user; ## +------------------+-----------+-----------------------+ ## | User | Host | plugin | ## +------------------+-----------+-----------------------+ ## | root | localhost | mysql_native_password | ## | mysql.session | localhost | mysql_native_password | ## | mysql.sys | localhost | mysql_native_password | ## | debian-sys-maint | localhost | mysql_native_password | ## +------------------+-----------+-----------------------+ ## 4 rows in set (0.00 sec) ## 退出 mysql 控制台 exit;
- 删除配置文件
/etc/mysql/mysql.conf.d/mysqld.cnf
段落[mysqld]
中的skip-grant-tables
行 - 重新启动 MySQL
service mysql restart
方式2 - 操作步骤
- 切换到系统用户
root
su root
- 重新设置
MySQL
根用户root
的密码## 登录 mysql, 此时并不真正需要输入密码,回车直接跳过密码输入即可进入 MySQL 控制台 mysql -uroot -p ## 切换到 mysql 数据库 use mysql; ## 这里可以通过如下查询语句可以看到 root 的密码验证方式是 auth_socket SELECT User, Host, plugin FROM mysql.user; ## +------------------+-----------+-----------------------+ ## | User | Host | plugin | ## +------------------+-----------+-----------------------+ ## | root | localhost | auth_socket | ## | mysql.session | localhost | mysql_native_password | ## | mysql.sys | localhost | mysql_native_password | ## | debian-sys-maint | localhost | mysql_native_password | ## +------------------+-----------+-----------------------+ ## 4 rows in set (0.00 sec) ## 更新 root 密码和密码验证方式 update user set authentication_string=PASSWORD('ThisIs0neC0mplexPasswodString.'), plugin="mysql_native_password" where user='root'; ## 更新权限配置 flush privileges; ## 这里可以通过如下查询语句判断以上更新成功 SELECT User, Host, plugin FROM mysql.user; ## +------------------+-----------+-----------------------+ ## | User | Host | plugin | ## +------------------+-----------+-----------------------+ ## | root | localhost | mysql_native_password | ## | mysql.session | localhost | mysql_native_password | ## | mysql.sys | localhost | mysql_native_password | ## | debian-sys-maint | localhost | mysql_native_password | ## +------------------+-----------+-----------------------+ ## 4 rows in set (0.00 sec) ## 退出 mysql 控制台 exit;