Win10下mysql5.5和mysql8.0.19共存

需求:由于之前做的项目用的是mysql5.5,而新接的项目指定用mysql8,需要myql5..5和8同时存在运行。

前提:电脑已经安装mysql5.5,先关闭mysql5.5的服务

安装目录:mysql 8 D:\mysql8\mysql-8.0.19-winx64

​ mysql5.5 C:\Program Files\MySQL\MySQL Server 5.5

mysql8.0.19下载地址:

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

初始化my.ini文件

解压zip文件到安装目录 D:\mysql8\mysql-8.0.19-winx64

  • 新建一个Data空文件夹
  • 新建一个my.ini文件,内容如下
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=D:\mysql8\mysql-8.0.19-winx64
# 设置mysql数据库的数据的存放目录
datadir=D:\mysql8\mysql-8.0.19-winx64\Data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。
max_connect_errors=10
# 服务端使用的字符集默认为
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
#mysql_native_password
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4

注意:

  • mysqld和client的端口号不能和mysql5.5的冲突,basedir和datadir按实际路径填写

初始化Mysql

在win10搜索框搜索cmd,右键以管理员身份运行

进入 D:\mysql8\mysql-8.0.19-winx64\bin目录

进入D盘的命令为 d:

输入命令:

mysqld --defaults-file=D:\mysql8\mysql-8.0.19-winx64\my.ini --initialize --console

注意:有的教程只输入这个命令 mysqld --initialize --console 如果只是安装mysql8是没问题的,如果同时还存在一个mysql其他版本,在链接数据库时会默认链接到之前的mysql5.5数据库,导致一直出现密码错误。

第二个红圈标注的是mysql8提供的初始密码12位。

注意:如果显示error: Found option without preceding group in config file: D:\mysql8\mysql-8.0.19-winx64\my.ini at line: 1

不要慌,这是因为你的my.ini文件编码为utf-8编码,用notepad该为ANSI编码就OK了。

安装Mysql服务

执行命令:

mysqld install mysql8 --defaults-file=D:\mysql8\mysql-8.0.19-winx64\my.ini

mysql8是我起的别名,后面的--defaults-file=D:\mysql8\mysql-8.0.19-winx64\my.ini一定要加上否则后面还会出现链接错误的mysql服务。

注意:如果显示The service already exists,说明目前还有mysql8这个服务,用 指令:sc delete mysql8 把它删掉在重新安装。

重要的一步:

进入注册表将mysql8的值修改为:

"D:\mysql8\mysql-8.0.19-winx64\bin\mysqld" --defaults-file=D:\mysql8\mysql-8.0.19-winx64\my.ini mysql8

启动Mysql8服务

连接Mysql

这里我们使用navicat来连接

密码为上面初始化时候的密码。连接名自己设置

点击测试连接,连接成功就大功告成了。

注意:如果你出现了密码错误

  • 密码错误
  • 是否在完全按照我的命令输入的,可以打开系统服务找到mysql8服务看看属性里面的可执行文件路径是否为新的mysql8的执行路径,如果不是的话,把Data文件夹删除,按照我的指令重新做一遍。

修改密码

用Navicat点击刚刚的连接

就会提示我们输入新密码

至此结束

参考文献(排名不分先后):

1.https://blog.csdn.net/qq_37350706/article/details/81707862

2.https://blog.csdn.net/xcymorningsun/article/details/80306997

3.https://segmentfault.com/a/1190000020164356

Win10下mysql5.5和mysql8.0.19共存的更多相关文章

  1. win10安装两个不同版本的mysql(mysql5.7和mysql-8.0.19)

    win10中安装mysql5.7后,安装mysql-8.0.19 在D:\mysql-8.0.19-winx64目录下创建一个my.ini文件 [mysqld] # 设置3307端口 port # 设 ...

  2. Win10下免安装版MySQL8.0.16的安装和配置

    1.MySQL8.0.16解压 其中dada文件夹和my.ini配置文件是解压后手动加入的,如下图所示 2.新建配置文件my.ini放在D:\Free\mysql-8.0.16-winx64目录下 [ ...

  3. win10下vs2015配置Opencv3.1.0过程详解

    下载安装Opencv3.1.0 下载Opencv3.1.0,进入官网,点击opencv for windows即可下载.  点击运行下载好的文件.实际上,opencv的安装程序就是解压缩文件,个人因为 ...

  4. MySQL下载与MySQL安装图解(MySQL5.7与MySQL8.0)

    MySQL下载与MySQL安装图解(MySQL5.7与MySQL8.0) 1.MySQL下载(MySQL8.0社区版) mysql下载方法,请根据风哥以下步骤与图示来下载mysql8.0最新社区版本: ...

  5. win10下vs2015配置Opencv3.1.0过程详解(转)

    下载安装Opencv3.1.0 下载Opencv3.1.0,进入官网,点击opencv for windows即可下载.  点击运行下载好的文件.实际上,opencv的安装程序就是解压缩文件,个人因为 ...

  6. win10下mysql5.7的安装与配置

    Win10下MySql5.7的安装与配置 下载 官网下载地址 选择免安装版即可, 解压 将下载的压缩包解压到你想要放置MySQL的目录,避免中文空格. 示例:D:\devtools\mysql-5.7 ...

  7. 个人亲测,在win10系统下安装多实例mysql8.0详细教程

    由于公司的新项目需要导入sql脚本,需要更高版本的mysql数据库,原来的数据库我也不想删除和升级,因此安装了第二个mysql8的实例,废话不多说,步骤如下: 1.下载mysqlGPL版本,我下载的版 ...

  8. Win10环境下安装压缩包版本MySQL-8.0.13

    准备工作 系统环境:Windows 10 1803版本: 压缩包:MySQL-8.0.13 Windows zip包下载: 安装过程 1. 加载安装包到你的安装目录 将下载的MySQL压缩包解压并移到 ...

  9. MySQL8.0.19主从环境搭建(CentOS7)

    默认情况下,复制是异步的,从站不需要永久连接以接收来自主站的更新.根据配置,您可以复制数据库中的所有数据库,所选数据库甚至选定的表. MySQL中复制的优点包括: 横向扩展解决方案 - 在多个从站之间 ...

随机推荐

  1. msql语句

    表相关语句: 创表相关 CREATE TABLE `Student`( `s_id` VARCHAR(20), `s_name` VARCHAR(20) NOT NULL DEFAULT '', `s ...

  2. 第2.3节 Python运算符大全

    一. Python的算术运算 Python的算术运算符与C语言类似,略有不同.包括加(+).减(-).乘(*).除(/).取余(%).按位或(|).按位与(&).按位求补(~).左移位(< ...

  3. 第11.21节 Python 中正则表达式的其他扩展功能

    一. 引言 在<第11.17节 Python 正则表达式扩展功能:命名组功能及组的反向引用>中老猿介绍了组匹配模式的命名组功能及引用组功能,这两者都是正则表达式的扩展功能,其实在re模块中 ...

  4. PyQt学习随笔:Model/View开发时在view数据项中设置不同角色数据的方法

    在往Model中通过QStandardItem等类插入数据项时,除了实际插入的存储数据,还可以设置不同角色(请参考<PyQt学习随笔:Model/View中诸如DisplayRole的数据角色及 ...

  5. PyQt(Python+Qt)学习随笔:QAbstractItemView的dragEnabled属性的困惑

    老猿Python博文目录 老猿Python博客地址 dragEnabled属性用于控制视图是否支持拖拽,可以通过dragEnabled().setDragEnabled(bool enable)进行属 ...

  6. Hbase 简单封装(Hbase 2.0+ API)

    前言 封装了一些常用的方法 添加一行数据 创建表(单列族) 创建表(多列族) 删除表 判断表是否存在 获取一行数据(根据rowkey) 获取某个列族某个列的某行数据 打印出result(方便展示数据) ...

  7. Jenkins Job间传递参数的一种方法

    场景: Jenkins 中可以建多个Job,一般是主编译Job,多个子Job. 子Job要用主Job中的版本号,编译号. 1)  在主Job里面添加脚本命令: echo set MainVersion ...

  8. 团队作业5_测试与发布(Alpha版本)

    Alpha版本测试报告 1.测试找出的bug(N个): (1)修复的Bug:很多个,主要是一些疏忽造成的,比如请求url写错导致数据加载不了.比较有意义的bug是因为使用redux,但是用户刷新后数据 ...

  9. 半夜删你代码队 Day5冲刺

    一.每日站立式会议 1.站立式会议 成员 昨日完成工作 今日计划工作 遇到的困难 陈惠霖 跟进作业 完成注册界面 相关界面设计内容知识不充足 侯晓龙 开始双人合作 开始与数据库结合 无 周楚池 初步完 ...

  10. C++ 有关指针作为函数参数的问题,自定义内存分配函数传递二级指针的问题

    如题所示,我们主要讨论在自定义的内存分配函数中通常见到的代码如下所示: void Create(A** addr); 其中传递的参数是二级指针.为什么? 我们先看一下完整的动态内存分配函数的简单例子: ...