Win2016 Server 同时安装MySQL5.7和MySQL8.0版本

1. 目标

目标:搭建mysql恢复演练环境>
说明:已经在win2016 Server上完美部署,参考在win10上也是可以的
参考:https://blog.csdn.net/weixin_55983004/article/details/123225494

2. 下载

下载两个版本的MySQL

  1. 进入官网下载:https://www.mysql.com/ , 点击Downloads

在这里插入图片描述

  1. 向下滑动找到MySQL Community Server

在这里插入图片描述

在这里插入图片描述

直接进入是MySQL8版本,然后下载压缩包版本
点击右上角的以前版本,下载MySQL5版本

在这里插入图片描述

也同样下载压缩包版本
在这里插入图片描述

3. 解压和安装

3.1 解压

注意:此处先解压一个MySQL5版本,稍后安装MySQL8时再解压8.0版本(要不然容易出问题)

实际操作中:解压到D:\MYSQL

在这里插入图片描述

3.2 配置环境变量(可选)

这个步骤可选,因为是2个版本的mysql,但在执行的命令,mysqld,mysql都一样的,除非自己改执行命令的名称,但这样又不合适,所以这个步骤不做也可以的。

1.右击我的电脑->属性->高级系统设置->环境变量

2.新建变量:MYSQL5_HOME , MYSQL8_HOME , 变量值为对应的mysql版本的安装路径

在这里插入图片描述

  1. 这一步不需要, 添加了反而会出错!!!

    找到Path变量,在变量尾部,添加两个版本的bin, 添加
    %MYSQL5_HOME%\bin
    %MYSQL8_HOME%\bin

4. 安装数据库

4.1 安装 MySQL5 数据库

  1. 创建my.ini配置文件

​ my.ini文件内容(目录分割使用双斜杠)

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
port = 3305
[mysqld]
# 设置3305端口
port = 3305
# 设置mysql的安装目录
basedir=D:\\MYSQL\\MYSQL5\\mysql-5.7.37-winx64
# 设置mysql数据库的数据的存放目录(自动生成,不然可能报错)
datadir=D:\\MYSQL\\MYSQL5\\mysql-5.7.37-winx64\\data
# 允许最大连接数
max_connections=10000
# 允许最大连接人数
max_user_connections=1000
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

# 连接时间
wait_timeout=31536000
interactive_timeout=31536000
  1. 生成Data文件夹,以管理员身份打开cmd命令提示符,切换到MySQL5的 bin 路径下。

    输入命令:mysqld --initialize
    等一段时间,它会重新生成一个 Data 文件夹

在这里插入图片描述

找到其中后缀为 .err 的文件,打开查找密码password,一般有密码。

在这里插入图片描述

@localhost后面为随机生成的密码

  1. 安装MySQL5服务

    在命令行输入 (名字命名为MYSQL5,并且指定默认的配置文件为刚才创建的my.ini文件)

    注意安装路径

    mysqld --install MYSQL5 --defaults-file=D:\MYSQL\MYSQL5\mysql-5.7.37-winx64\my.ini

  2. 开启MySQL5服务

    在命令行输入net start MYSQL5

  3. 登录MYSQL5,并且修改密码

    (1)登录输入:mysql -u root -P 3305 -h localhost -p

    密码输入 .err文件里的生成的随机密码

在这里插入图片描述

(2)修改密码输入:(此处将密码修改成了123456)

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
flush privileges;

4.2 安装 MySQL8 数据库

安装MySQL8(与安装MySQL5同理)

  1. 创建my.ini配置文件

​ my.ini文件内容(目录分割使用双斜杠)

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
port = 3308
[mysqld]
# 设置3308端口
port = 3308
# 设置mysql的安装目录
basedir=D:\\MYSQL\\MYSQL8\\mysql-8.0.28-winx64
# 设置mysql数据库的数据的存放目录(自动生成,不然可能报错)
datadir=D:\\MYSQL\\MYSQL8\\mysql-8.0.28-winx64\\data
# 允许最大连接数
max_connections=10000
# 允许最大连接人数
max_user_connections=1000
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

# 连接时间
wait_timeout=31536000
interactive_timeout=31536000
  1. 生成Data文件夹,以管理员身份打开cmd命令提示符,切换到MySQL8的 bin 路径下。

    输入命令:mysqld --initialize
    等一段时间,它会重新生成一个 Data 文件夹

  2. 安装MySQL8服务

    在命令行输入 (名字命名为MYSQL5,并且指定默认的配置文件为刚才创建的my.ini文件)

    注意安装路径

    mysqld --install MYSQL5 --defaults-file=D:\MYSQL\MYSQL5\mysql-5.7.37-winx64\my.ini

  3. 开启MySQL8服务

    在命令行输入net start MYSQL5

在这里插入图片描述

  1. 登录MYSQL8,并且修改密码

    (1)登录输入:mysql -u root -P 3305 -h localhost -p

    密码输入 .err文件里的生成的随机密码

    (2)修改密码输入:(此处将密码修改成了123456)

    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
    flush privileges;
    
  2. 查看服务

​ 然后打开图形化界面两个数据库都可以连接

在这里插入图片描述

  1. 配置远程连接

    mysql5 登录数据库,执行如下sql

    mysql> update mysql.user set host='%' where user='root';
    Query OK, 1 row affected (0.00 sec)
    Rows matched: 1  Changed: 1  Warnings: 0
    
    mysql> flush privileges;
    Query OK, 0 rows affected (0.00 sec)
    

navicat

在这里插入图片描述

5. 过程错误及解决

5.1 mysql8 数据库初始化出现错误

错误信息: mysql8安装报错解决:无法启动此程序,因为计算机中丢失VCRUNTIME140_1.dll

在这里插入图片描述

问题描述:

安装mysql时报错无法启动此程序,因为计算机中丢失VCRUNTIME140_1.dll。尝试重新安装该程序一解决问题

解决方法:

这是缺少了动态链接库(.ddl文件),需要安装VC_redist.x64.exe.
VC_redist.x64.exe是 针对于不同CPU所出的优化补丁执行程序,是一种基于C++的软件需要的库文件,有些程序在安装相应的vcredist文件环境下才能运行。我们mysql安装时需要读取C:/windows/System32/目录下的VCRUNTIME140_1.dll,在安装了vcredist后可以正常使用dll文件

解决步骤:

官网下载地址:(根据电脑位数下载对应的版本)
https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads

在这里插入图片描述

3.双击下载下的VC_redist.x64.exe安装:

系统中已经出现需要的dll文件了

msyql再安装就ok了

参考地址:https://blog.csdn.net/qq_29864051/article/details/124494685

问题解决。

5.2 mysqld 卸载 服务出错

错误情况:

用 mysqld --remove MYSQL8 卸载了,但是在服务中还存在

在这里插入图片描述

在这里插入图片描述

解决:

  1. 获取服务的进程ID: sc queryex
  2. 杀死进程: taskkill /F /PID

其他参考:

  1. SysInternals的Process Explorer打开。关闭它会导致服务自动删除。
  2. 任务管理器已打开。
  3. Microsoft管理控制台(MMC)已打开。要确保关闭所有实例,请运行taskkill /F /IM mmc.exe。
  4. 服务控制台已打开。这与上一点相同,因为Services控制台由MMC托管。
  5. 事件查看器已打开。同样,这与第三点相同。
  6. 密钥HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ {服务名称}存在。
  7. 其他人登录到服务器,并打开了前面提到的应用程序之一。
  8. 用于调试服务的Visual Studio实例已打开。

原地址:https://qastack.cn/programming/20561990/how-to-solve-the-specified-service-has-been-marked-for-deletion-error

在这里插入图片描述

在这里插入图片描述

问题解决!

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

若行若冲

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值