安装8.0后,登录报错:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
解决方法:
1、(重要)在mysql安装根目录新建my.ini文件,写入以下内容:
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
# 设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=D:\Database\MySQL Server 5.7
# 设置mysql数据库的数据的存放目录
datadir=D:\Database\MySQL Server 5.7\data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 跳过密码验证
#skip-grant-tables
2. 运行cmd(切记要用管理员身份);
3. (重要)执行命令mysqld --initialize
4. 执行命令mysqld install,安装服务;
5. 执行命令net start mysql,启动服务;(停止服务net stop mysql)
6. 执行命令mysql -uroot -p,会报错ERROR 1045(28000),需要设置登录密码;
7. 打开配置文件my.ini,将skip-grant-tables前面的#去掉,然后重启服务,再次登录,在输入密码处直接回车,就可略过密码;
8. 进入mysql数据库,依次执行以下命令:
(1)首先更新权限
flush privileges;
(2) 修改新密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
(3) 输入 quit 退出 mysql
9. 再次重新登录,执行命令mysql -uroot -p,输入刚才修改的“123456”,登录成功。
安装步骤请参照:Mysql8.0安装教程_Slience_me的博客-CSDN博客_mysql8.0安装
本文参考前半段参考,原文链接:https://blog.csdn.net/xiao__ge/article/details/52958262