1.如果服务里有mysql,要先删除
(1)管理员模式cmd,进入mysql的安装目录的bin文件夹内
cd D:\back_sw\mysql-8.0.28-winx64\bin
(2)关闭mysql服务,卸载mysql,删除mysql服务(语句一条条执行,mysql是服务名称,根据实际情况做更改),之后刷新下服务就可以看到已经删除了。
net stop mysql;
mysqld -remove;
sc delete mysql;
2.新建一个my.ini文件,但不要新建data文件夹,注意basedir、datadir改为实际的mysql安装目录,且要用 \\ ,此外配置MYSQL_HOME环境变量,和JAVA_HOME操作一致。
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=D:\\back_sw\\mysql-8.0.28-winx64
# 设置mysql数据库的数据的存放目录
datadir=D:\\back_sw\\mysql-8.0.28-winx64\\data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
skip-grant-tables
3.在cmd窗口执行命令 mysqld --initialize,然后会在mysql安装目录,看到生成了一个data文件夹,点开data,里面会有 .rr 后缀的文件,在里面有随机生成的root密码。
mysqld --initialize
4.安装、开启mysql服务、登陆,,依次执行以下语句,最后输入 .err 文件中的密码,如果登陆成功就可以了。
mysqld -install;
net start mysql;
mysql -u root -p;
5.如果报Access denied for user 'root'@'localhost' (using password:YES) 错误,按照以下步骤,继续在cmd中操作。
net stop mysql;
mysqld --remove;
然后手动把data文件夹和my.ini文件删除了
mysqld --install;
mysqld --initialize --user=root --console;
cmd中会有一个默认密码,等下用得到
net start mysql;
mysql -u root -p
输入上面的密码,然后就可以了,下面更改密码
set password='root';
参考:(10条消息) Can‘t connect to MySQL server on ‘localhost:3306‘ (10061) 简洁明了的解决方法_Squito的博客-CSDN博客 (10条消息) mysql-8.0.28 压缩版安装_Tryli的博客-CSDN博客_mysql8压缩版