安装 Mysql 8.0.x 的艰难体验

时间:2022-01-07 02:49:12

背景:

Mysql 8.0 以后版本,在性能等方面有了很大提升,而且在自动编号、Timestamp等字段的设置上有了很方便的进步,因此在一年前即开始将原有的基于5.5版本的服务器逐渐向8.0.x 转移。但转移的过程问题颇多,主要的几个障碍如下:

1、需要各种visual c  的可发布版本;(8.0以后的小版本要求有所不同)

2、需要python 3.7版本。(8.0以后的小版本要求有所不同)

第一次安装时相对顺利,可能的原因是该服务器是一个“干净”的服务器,而且安装的是8.0.16版Mysql community Server要求较少;

而第二次安装则经历了一天一夜才安装完成,且使用了非同寻常的手段。下面以第二次安装的结果为例说明我是如何操作的。

 

第二次安装的基本环境如下:

1、操作系统:Wiindows Server 2012 R2 标准版;操作系统安装了最新补丁。

2、以前安装过Mysql 5.5.57版本;

3、目标安装版本:Mysql 8.0.19 community server 

下面将我认为的较可行的方案记录如下,大家可作参考。

 

一、.Net Framework 4.5.2版本

这个是一切安装的前提,可以先行安装,且与其它不冲突。

 

二、visual c 系列运行时文件

8.0.19版本要求:Visual c  运行库的2010、2013、2015以及2015-2019版本。

这些运行时文件从微软的官方网站下载存在困难,且基本安装不成功。原因可能是:

一是可能与操作系统有关,下载的版本大都提示不适用于当前操作系统(可能主要是用于Win 7 或 Win 10等客户端操作系统);

二是会提示需要安装 KB2919355 更新后,才能安装。

因此应当先安装下一步。

 

三、KB2919355更新文件

KB2919355 更新文件下载后,直接安装仍然报错,提示是需要先安装 KB2919442更新。

而KB2919442 更新从微软官网下载不了,提示文件不存在。

最后从网上找了一个KB2919442(具体是哪位发布者和网站,确实不记得了),最后成功安装,而后安装了 KB2919355 。

 

四、安装Visual C  运行库文件

由于从官方下载的始终安装不成功,最后下载的是一个网上的打包后的文件,可以一次性安装所有运行时文件。(虽然成功安装,但实际上这些库文件与安装和运行 mysql 所要求的文件仍有区别,具体见后)

 

五、安装Mysql 

前面的都在没有错误提示的情况下安装成功,Mysql 8.0.19的安装过程也没有问题,但在配置时出错,mysqld.exe 无法启动,初始化数据库不成功。

卸载重装依然如此;先安装 8.0.16 问题同样存在,均是在初始化数据库时报错,导致安装失败。

在经历了无数次的卸载、安装;旧版本安装、卸载;注册表清理、删除后,问题依然如故。

后来想,既然它要求安装visual c  库,那这个问题应该还是和这几个文件有关,倒不如直接安装一个 visual studio 2019,如果能够成功安装,那这些库应该就都没有问题了。于是下载 visual studio 2019进行安装(需要联网、需要具备 KB2919355更新,方能进行安装;可选几个安装文件小的选项安装即可,建议选中 python 选项)。

成功安装后,再回过头来,安装 Mysql 8.0.19 ,一切顺利,启动也正常。

8.0.19 要求 python.exe 3.7版本,安装 visual studio 时能成功安装(可能需要选择 python 选项)

 

六、本次安装用到的文件如下:

.Net 4.5.2框架

KB2919442

KB2919355

Visual C  系列运行库

其它内容均可从官网下载。

上述文件已放在我的百度网盘,请参考下载。链接: https://pan.baidu.com/s/1bpmX0Djjol_xudVKOO2Gzg 提取码: jafs

文件说明:网盘中的文件要多一些,大家可作参考。

 

----------------

总结:

1、mysql 对微软的运行时库有如此强烈的依赖,却不打包进去,当然是有原因的;但如此重量级的两个公司,居然没有一个好的安装包解决这些问题,实在令人费解。

2、Visual Studio 安装后可以卸载,不影响运行;另外,也许可以从 Visual studio 的安装包提取到相关文件,大家有兴趣可以一试。