电脑本地安装不同版本MySQL

本地已经安装了mysql5.7版本,想测试mysql8版本的用法,想在一台电脑同时配置不同版本的mysql在不同端口号,看起来简单,实现起来其实挺多坑的,总结下实战经验和大家分享下

一、下载安装

二、配置

1、解压缩,设置my.ini
从原来版本拷贝过来即可,改端口号以及dir

[mysqld]
port=3307
basedir=F:\mysql8\mysql-8.0.31-winx64
datadir=F:\mysql8\mysql-8.0.31-winx64\data
max_connections=200
max_connect_errors=10
character-set-server=utf8
default-storage-engine=INNODB
[mysql]
default-character-set=utf8

2、初始化数据库,生成data目录以及密码

mysqld --defaults-file=F:\mysql8\mysql-8.0.31-winx64\my.ini --initialize --console

在这里插入图片描述
在这里插入图片描述
3、安装MySQL8服务

mysqld install MySQL8 --defaults-file=F:\mysql8\mysql-8.0.31-winx64\my.ini

看到Service successfully installed.说明已经成功,这时候我们可以看到服务多了一个MySQL8
在这里插入图片描述
4、修改注册表ImagePath值
win+r快捷键,然后输入regedit,会发现多了一个MySQL8,修改ImagePath的值为

F:\mysql8\mysql-8.0.31-winx64\bin\mysqld.exe --defaults-file=F:\mysql8\mysql-8.0.31-winx64\my.ini MySQL8

在这里插入图片描述

三、验证

1、启动服务

net start mysql8

PS F:\mysql8\mysql-8.0.31-winx64\bin> net start mysql8
MySQL8 服务正在启动 ..
MySQL8 服务已经启动成功。

2、验证

mysql -P 3307 -u root -p,回车输入密码,可以看到我们已经登录上我们的mysql8版本

在这里插入图片描述

mysql -P 3306 -u root -p,回车输入密码,可以看到我们已经登录上我们的mysql5.7版本

在这里插入图片描述

四、总结

1、本地计算机上的MySQL8服务启动后停止

在这里插入图片描述
解决:

  • 保证两个版本的mysql在不同目录
  • 安装mysql8服务的时候,指定读取的my.ini(mysqld install MySQL8 --defaults-file=F:\mysql8\mysql-8.0.31-winx64\my.ini)
  • data目录不能直接从原来copy过来,需要修改,待研究

2、ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

执行命令,修改密码即可

alter user user() identified by “forlan”;

3、指定端口号登录,版本错误问题

mysql5.7,端口3306 mysql8,端口3307
在这里插入图片描述
原因:注册表中的MySQL的ImagePath值设置错误
解决:修改后记得重新启动服务
在这里插入图片描述

4、删除服务

sc delete mysql8

posted @ 2023-01-29 11:48  程序员Forlan  阅读(474)  评论(3编辑  收藏  举报