在此我想强调一下,有很多人会说需要设置环境变量,如果你的电脑就安装一个mysql,那没问题,但是开发中总会需要安装很多个,不同的版本都有安装,所以大家不要设置环境变量,会导致后续安装的mysql失败,在安装多个mysql前,已经设置了环境变量的,先去掉环境变量再进行安装
1.登陆mysql官网下载mysql zip版本
下载地址:https://dev.mysql.com/downloads/mysql/
2.解压压缩包,注意存放的文件夹最好不要带有空格,可以直接解压到磁盘根目录:
3.打开解压后的文件夹,新建一个data文件夹和一个my.ini文件:
4.用记事本打开my.ini,内容如下:
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=D:\\mysql-8.0.21-winx64
# 设置mysql数据库的数据的存放目录
datadir=D:\\mysql-8.0.21-winx64\\data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8
5.使用管理员身份打开cmd,跳转到mysql的bin目录:(以下操作都是管理员身份)
运行: mysqld --initialize --console
6.若出现错误,代表需要打补丁VC++:
7.使用DirectX Repair v4.0 增强版.rar,来打补丁
下载地址:https://download.csdn.net/download/wxj1079099010/86457851
8.再次运行【第5步】初始化命令 ,得到随机密码,一定要把密码记下来
9.继续安装服务,并启动之:
# 安装服务(说明一下,这里的install后面跟着的是服务名,如果没写默认是mysql,若非首次安装,一定要制定好服务的名字:mysqld -install mysql8-3307)
mysqld -install
# 启动服务(后面跟着的是你刚刚安装的服务的名字)
net start mysql
10、登录并修改密码: (此时登陆用到的密码就是上面让你记录下来的密码)
强调一下,mysql5.7及以下用下面的修改密码命令
# 登录
mysql -u root -p
# 修改密码
alter user root@localhost identified by 'root?1234567890!'
若8.0使用以上方式修改了密码,客户端链接工具活显示链接补上
出现这个原因是mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password
解决办法:把mysql用户登录密码加密规则还原成mysql_native_password.使用下面的方式即可
mysql8.0用下面的方式修改密码
步骤:
1.打开cmd命令窗口,输入命令 mysql -uroot -p 打开MySQL数据库,然后输入密码进行登录。
2.修改加密规则
将加密方式改为mysql_native_password
ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘12345’;
3.更新用户的密码
这里将密码更改为password,如果想要更改其他密码,把password替换掉即可
ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘password’ PASSWORD EXPIRE NEVER;
4.输入命令
FLUSH PRIVILEGES; 进行刷新。
11.授权远程登录:
# 切换到mysql数据库
use mysql;
# 查看用户表;
select user, host from user;
# 将其中root用户的host更新成'%'
update user set host = '%' where user = 'root';
# 立即生效
flush privileges;