1.关闭mysql
net stop mysql
2.在my.ini中mysqld下添加
skip-grant-tables
完整的my.ini
[client]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置3306端口
port = 3306
# 设置mysql的安装目录 这块换成自己解压的路径
basedir=D:\\App\\mysql-5.7.28-winx64
#datadir=D:\\App\\mysql-5.7.28-winx64\data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
skip-grant-tables
3.重启mysql
net start mysql
4.登录,这时候不用输入密码直接登录
D:\App\mysql-5.7.28-winx64\bin>mysql -uroot -p
5.修改密码
mysql> update mysql.user set authentication_string=password('root') where user=
'root';
Query OK, 1 row affected, 1 warning (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 1
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)
6.允许远程连接
grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;
7.在my.ini中mysqld下删除刚刚添加的跳过授权
8.关闭后再重启就可以 了
试试吧