1. 多版本zip准备

[ https://dev.mysql.com/downloads/mysql/ ]

官网地址,

MYSQL5.7

mysql 安装多实例 windows mysql多版本安装_mysql


mysql 安装多实例 windows mysql多版本安装_mysql5_02


2. MYSQL8,

mysql 安装多实例 windows mysql多版本安装_mysql_03

2. 解压到指定目录

mysql 安装多实例 windows mysql多版本安装_mysql5_04

3. 配置环境变量

mysql 安装多实例 windows mysql多版本安装_mysql 安装多实例 windows_05


2. 加入Path变量

mysql 安装多实例 windows mysql多版本安装_mysql5_06

3. 配置以及初始化,创建服务(MYSQL5)

1.在bin的同级目录下创建my.ini配置文件

mysql 安装多实例 windows mysql多版本安装_mysql5_07


2. my.ini 内容:

mysql 安装多实例 windows mysql多版本安装_mysql5_08


3. 创建自己指定的目录: 比如上面 的basedir下的mysqlinstall ,和datadir下的mysqldata目录

安装MYSQL
  1. 在管理员身份下运行cmd,进入到bin目录分别执行以下命令:
mysqld --defaults-file=D:\SoftWareProgram\MySQL\mysql-5.7.26-winx64\my.ini --initialize --console

此命令初始化MYSQL, 并且生成一个root的初始化密码:

mysql 安装多实例 windows mysql多版本安装_mysql5_09


记住该密码,等会用于修改密码

  1. 创建MySQL5服务
mysqld install MySQL5 --defaults-file=D:\SoftWareProgram\MySQL\mysql-5.7.26-winx64\my.ini

出现service successfully installed 说明成功了

启动MySQL5
net start MySQL8
登录并修改密码
mysql -uroot -p -P3307
 输入刚才的随机密码:
 ALTER USER ‘root’@'localhost’IDENTIFIED BY ‘root’ 这样就把root密码修改了.
初始密码忘记怎么办?

删除刚才初始化my.ini 文件 中指定的datadir 指定的mysqldata中的内容,
重新执行上面的操作步骤

  1. 如果需要删除MySQL5服务, windows 命令: sc delete 服务名
sc   delete MySQL5

安装MySQL8

1. 切换环境变量指定为MySQL8

mysql 安装多实例 windows mysql多版本安装_mysql8_10

2. 在Mysql8的解压包下创建my.ini

mysql 安装多实例 windows mysql多版本安装_mysql多版本安装_11

内容:

mysql 安装多实例 windows mysql多版本安装_mysql8_12


注意1 / 2 /3 上面需要自己去创建

初始化mySQL8

在管理员身份下运行cmd,进入到bin目录分别执行以下命令 :

mysqld --defaults-file=D:\SoftWareProgram\MySQL\mysql-8.0.16-winx64\my.ini --initialize --console

记住初始密码,用于修改 密码

创建MySQL8服务
mysqld install MySQL8 --defaults-file=D:\SoftWareProgram\MySQL\mysql-8.0.16-winx64\my.ini
查看注册表避免引用的是第一个安装的MySQL环境

在cmd命令下输入regedit修改注册表,在\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services 找到对应的服务名,修改ImagePath

mysql 安装多实例 windows mysql多版本安装_mysql_13


比如 MySQL5 的ImagePath 值: 如下

D:\SoftWareProgram\MySQL\mysql-5.7.26-winx64\bin\mysqld --defaults-file=D:\SoftWareProgram\MySQL\mysql-5.7.26-winx64\my.ini MySQL5

MySQL8的值类似

4.启动MySQL8

net start MySQL8

5. 修改MySQL8的密码

mysql -uroot -p -P3306
是3306可以不指定IP
输入刚才的初始化密码 :

mysql : ALTER USER ‘root’@'localhost’IDENTIFIED BY ‘root’
这样就配置完成了 2个不同版本的服务了, 在使用不同版本的时候, 需要切换一下环境变量的MYSQL_HOME 指向, 其次切换一下启动的MYSQL服务即可

my.ini 详细内容

[mysqld]
# 设置3306端口
port=3307
# 设置mysql的安装目录
basedir=D:\SoftWareProgram\MySQL\mysql-5.7.26-winx64\mysqlinstall
# 设置mysql数据库的数据的存放目录
datadir=D:\SoftWareProgram\MySQL\mysql-5.7.26-winx64\mysqldata

#lc_messages_dir=D:\SoftWareProgram\MySQL\mysql-5.7.26-winx64\share
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
#开启查询缓存
#explicit_defaults_for_timestamp=true
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3307
default-character-set=utf8