2020年8月26日更新WINDOWS服务器同时安装多个版本的MYSQL的方法,MQYSQL5和MQYSQL8的共存。

编辑:睿儿发表于:2020-08-26 22:48:04 34 次阅读
原创声明:本内容(2020年8月26日更新WINDOWS服务器同时安装多个版本的MYSQL的方法,MQYSQL5和MQYSQL8的共存。)为睿儿网络原创作品,任何媒体、网站或个人未经本网协议授权不得转载、链接、转贴或以其他方式复制发布/发表。如需转载请联系站长QQ:7280374 请注明申请文章转载!

之前写过一篇关于多个版本MYSQL在服务器上共同运行的内容,但因为经验不足整理的很乱。今天又在一台新服务器上测试重新整理了一下。

环境还是原来的环境,预装了MYSQL5 我们需要手动安装MYSQL8

服务器想要安装 MYSQL8 必须在服务器上安装VC2015类库 要不然在安装的时候会提示

image.png

新服务器没有 2015类库,所以我们需要去微软网站下载并安装。

微软下载地址:https://www.microsoft.com/zh-cn/download/details.aspx?id=48145 下载后会有一个 vc_redist.x64.exe的文件,安装到服务器即可。

完装完成后会在 控制面版  添加/删除程序里面看到。


安装好之后我们还是把MYSQL8的安装包解压在服务器上

然后新建 mysql.ini文件(端口要和MYSQL5的端口分开,想要修改端口的话直接给MYSQL5的配置文件里面改一下重启服务就可以了。)

[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir="你的目录"
# 设置mysql数据库的数据的存放目录
datadir="你的目录data"
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4

接下来是需要配置环境变量,在环境变量的PATH里面增加你新版本的MYSQL的路径(我是直接把旧版本的路径改为新的,感觉要是留着旧路径的话会有问题),这一步很重要,之前因为没有配置环境变量导至出错了N多回。。

环境变量配置完成之后 找到CMD  用管理员身份运行 (这一步一定要在配置完环境变量之后再用,要不然找不到路径。非常重要)

打开CMD之后就可以开始我们的安装过程了。

首先初始化MYSQL8(初始化的时候MYSQL8的目录里面一定不要有DATA目录,如果有就删除掉)  使用命令:mysqld --initialize --console

image.png


这样就是初始化成功的案例,如果不成功,它不会给这个临时密码。。初始化成功之后会自动在MYSQL8的目录里面生成data文件夹。


接下来就是 创建服务 mysqld install mysql8  后面那个是给服务起的名儿。。我就叫它MYSQL8


image.png

运行完成之后,提示服务创建成功。

可以在控制面版  服务处看一下

image.png

再去 注册表看一下:HKEY_LOCAL_MACHINE -> SYSTEM -> CurrentControlSet -> services ->

image.png


只要路径都对说明就成功了没问题了。。


开启服务: net start mysql8

image.png

进入MYSQL 命令:mysql -u root -p  输入默认密码  成功后进入下图界面

image.png

做任何操作之前需要先修改密码:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的新密码'; 成功

image.png

密码修改成功。。

看一下端口:  show global variables like 'port';


image.png


总结:大概的意思就是 只要服务名和端口别重复就可以同时共存。每次安装新版本的时候先把环境变量改一下,改成新版本的路径。然后创建就好了。。。


2020年10月16日 重装服务器系统之后再次重新安装MYSQL8   服务器默认已装了MYSQL5

一、先给mysql5更改端口,并测试5的网站是否可以访问。还有一个ODBC数据源也需要看一下。

找到MYSQL5的 INI文件,把3306改成 3307 两个地方

进入CMD  把目录定在mysql5的BIN目录下,然后进行 mysql -u root -p  输入密码

进入MYSQL控制界面,进行 show global variables like 'port'; 查看端口

image.png

默认的MYSQL5已经改为3307了。

修改需要MYSQL5的网站链接,及ODBC数据源。。一切OK了。

二、安装MYSQL8 

因为之前装过,所以目录还在,直接把DATA目录的内容备份一下然后删除DATA目录准备开始安装。(目前环境变量没有配置,还是旧的MYSQL5的,不死心再试一下。)

使用命令:mysqld --initialize --console  初始化,,没配置环境变量,不影响 成功了

创建服务 mysqld install mysql8   需要关闭安全狗等防护软件,创建成功了,但注册表中的地址不对。

删除服务 mysqld -remove mysql8 删除成功,注册表和服务里面都没了。

重新创建服务 mysqld install  mysql8  --default-file="目录\mysql8\my.ini"  又建出一个MYSQL服务,但开头还是默认的MYSQL5环境目录,可能是环境变量里面配置的。

跑了一下 net start mysql8  提示服务无法启动 (看来还得配置环境变量)


删除服务 mysqld -remove mysql8  注册表和服务里面都还存在,可能是因为启动的时候开启了什么文件,导致文件被占用没有删除掉。

直接删除注册表  服务里面的还在。。。。(汗啊。。。)

修改环境变量为MYSQL8路径。

删除不掉MYSQL8服务,所以换了个名安装 创建服务 mysqld install mysql83  但装出来的路径还不对。。是不是改了环境变量需要重启。。重启一下试试。  

重启后MYSQL8服务消失了

重新安装 mysqld install mysql8 这次 注册表的路径对了。看来安装的时候必须配置环境变量,或者是否把环境变量删除也可以呢(完了再试吧)?

net start mysql8  启动成功。

mysql -u root -p 进入到输入密码状态,,把之前的默认密码输进去。

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的新密码'; 修改密码

show global variables like 'port' 查看端口


OK  一切正常。




原文地址:/library/202008/26.html(张家口导航-睿儿知识库)

张家口睿儿网络科技有限公司版权所有