Windows系统安装2个版本得的MySQL

一、MySQL官网下载对应版本的zip文件

最新版本8.0.34下载链接:https://dev.mysql.com/downloads/mysql/
在这里插入图片描述

MySQL 5.7下载链接:https://downloads.mysql.com/archives/community/
在这里插入图片描述

二、将下载到的压缩包解压到指定目录

使用解压工具将下载到的压缩包解压:如:解压到D:/software/目录下(自己选择),解压之后建议重命名该解压出来的文件:如mysql-8.0.34-winx64文件夹名,可将后面的winx64去掉,得到mysql-8.0.34(方便查看和理解,此处可不修改,但后续内容需对应更改)
在这里插入图片描述

三、添加环境变量

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

选择系统变量Path,在其后添加:你的mysql安装文件下面的bin文件夹
在这里插入图片描述

四、在与bin同级的文件夹下新建,my.ini文件(注意:此处5.7版本和8.0版本操作不同)

在这里插入图片描述

4.1、编辑my.ini文件的内容(MySQL 5.7版本,路径改为自己电脑上对应的路径)

[mysqld]

basedir=D:\\software\\mysql-5.7\\

datadir=D:\\software\\mysql-5.7\\data\\

port=3306

skip-grant-tables #免登陆检查

4.2、编辑my.ini文件的内容(MySQL 8.0版本,不需要加skip-grant-tables,路径改为自己电脑上对应的路径)

[mysqld]

basedir=D:\\software\\mysql-8.0.34\\

datadir=D:\\software\\mysql-8.0.34\\data\\

port=3307

注意:此处如果是\,会报错,修改为\,且端口号需要自行调整

五、启动管理员模式下的CMD,并将路径切换至mysql下的bin目录,然后输入:mysqld -install(安装mysql)

1.启动管理员模式下的CMD

在这里插入图片描述

2.将目录切换到解压的mysql文件中的bin文件夹的位置:

输入:cd /d D:\software\mysql-8.0.34\bin (路径换为你电脑对应的位置即可)
在这里插入图片描述

3.此时输入:mysqld -install (安装mysql服务)

这种安装方式服务名默认为MySQL,如果已有同名服务名,安装方式参考目录十二第二种安装方式

命令行界面出现:Service successfully installed.即可
在这里插入图片描述
图中是已装了的情况。

六、再输入 mysqld --initialize-insecure --user=mysql初始化数据文件

输入之前目录如下:
在这里插入图片描述
执行 mysqld --initialize-insecure --user=mysql(没输出ERROR信息则没报错)
在这里插入图片描述
执行成功:生成data和docs文件夹
在这里插入图片描述
data文件夹,即为存储数据库的地方,之前有数据库可拷贝到该目录下就可以使用了。
在这里插入图片描述

七、启动mysql,然后用命令 mysql -uroot -p 进入mysql管理界面

7.1、控制台继续输入: net start mysql

在这里插入图片描述

7.2、再输入:mysql -h127.0.0.1 -P3307 -uroot

在这里插入图片描述
直接输入回车,就可以进入到mysql管理界面(因为我们没有密码)。
其中,-h 参数指定连接的主机名(或 IP 地址),-P (大写的P)参数指定连接的端口号,-u 参数指定连接的用户名。
注意:由于已经安装了mysql5.7版本,直接使用mysql -uroot -p 会进入mysql5.7服务,无法进入mysql8.0,所以此时,需要指定连接的端口号

八、进入界面后更改root密码(注意:此处5.7版本和8.0版本操作不同)

1、mysql 5.7版本,输入:

update mysql.user set authentication_string=‘password(123456’) where user=‘root’ and host=‘localhost’;
在这里插入图片描述
出现图上内容,则修改密码成功了。

2、mysql 8.0版本,依次输入:

use mysql;
ALTER user root@'localhost' identified by '123456';

在这里插入图片描述
注意:这种修改方式,用Navicat连接时,会出现问题。解决方法在后面遇到的问题。

最后两个版本都输入:flush privileges; 进行刷新权限。
在这里插入图片描述

九、修改my.ini文件,删除最后一行skip-grant-tables免密登录(注意:此步只有5.7版本需要)

[mysqld]

basedir=D:\software\mysql-5.7\

datadir=D:\software\mysql-5.7\data\

port=3306

十、重启mysql即可正常使用

十一、使用修改的密码登录mysql

十二、mysql8.0版本第二种安装方式

服务名不可与已安装服务名重复,这里命名的服务为:MySQL80

1、执行命令 mysqld install MySQL80 --defaults-file=“D:\software\mysql-8.0.34\my.ini” ,出现Service successfully installed 表示服务安装成功

2、再输入 mysqld --initialize-insecure --user=mysql初始化数据文件

3、执行net start MySQL80 命令,启动服务

D:\software\mysql-8.0.34\bin>net start MySQL80
MySQL80 服务正在启动 .
MySQL80 服务已经启动成功。

4、执行mysql -h127.0.0.1 -P3306 -uroot -p123456命令,登录数据库

D:\software\mysql-8.0.34\bin>mysql -h127.0.0.1 -P3306 -uroot -p123456

附:遇到的问题

1、使用Navicat连接时,出现以下错误

在这里插入图片描述
主要原因是mysql服务器要求的认证插件版本与客户端不一致造成的。

打开mysql命令行输入如下命令查看,系统用户对应的认证插件:
在这里插入图片描述
可以看到root用户使用的plugin是caching_sha2_password,mysql官方网站有如下说明

在这里插入图片描述
意思是说caching_sha2_password是8.0默认的认证插件,必须使用支持此插件的客户端版本。

plugin的作用之一就是处理后的密码格式和长度是不一样的,类似于使用MD5加密和使用base64加密一样对于同一个密码处理后的格式是不一样的。

1.1、解决

1.查看用户信息

select host,user,plugin,authentication_string from mysql.user;

2.修改用户密码(最好直接复制粘贴,手敲可能会报错)

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456'; 

更新user为root,host为% 的密码为123456

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

更新user为root,host为localhost 的密码为123456

备注:host为 % 表示不限制ip localhost表示本机使用 plugin非mysql_native_password 则需要修改密码

修改前:
在这里插入图片描述

2、在安装Mysql 8 的过程中报错 mysqld: Can’t create directory …

在初始化mysql的时候执行mysqld --initialize-insecure --user=mysql遇到一个报错 mysqld: Can’t create directory … (OS errno 2 - No such file or directory)。

在网上搜了一遍,终于找到问题所在。
其实就是my.ini文件出了问题。
mysql 8 的配置文件中basedir 和 datadir 的路径格式不对!!!
网上贴的教程很多都是这样的:
在这里插入图片描述

#设置mysql的安装目录
basedir=D:\software\mysql-8.0.34\
#设置mysql数据库的数据的存放目录
datadir=D:\software\mysql-8.0.34\data

在这里插入图片描述
需要用双斜杠

#设置mysql的安装目录
basedir=D:\\software\\mysql-8.0.34\\
#设置mysql数据库的数据的存放目录
datadir=D:\\software\\mysql-8.0.34\\data

借鉴文章

【Windows上同时安装两个不同版本MYSQL】MySQL安装教程–5.7和8.0版本

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/132039.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

开源Gimp动态压感笔刷设置方法

一、问题描述 开源绘画工具的Gimp的笔刷压感在哪里控制和开启呢? 二、解决方法 1、Gimp有专用的笔刷集:如下图。开启需要在主窗口window下拉菜单开启,或在右侧面板里的左箭头按钮里打开。一般绘画够用了。比用自定义特殊笔刷。 2、如果要调…

C++:this指针和构造与析构的运用

目录 一&#xff0c;this指针 二&#xff0c;构造函数 三&#xff0c;析构函数 四&#xff0c;析构与构造的调用 一&#xff0c;this指针 首先&#xff0c;我们先观察以下类&#xff1a; #include <iostream> using namespace std; class Date { public: void In…

HCIA-hybrid经典小实验

hybrid经典小实验 实验拓扑配置实现SW1SW2 配置验证PC1-PC3 不能通信PC1-PC2 正常通信其他自行测试 实验拓扑 配置实现 SW1 sysname SW1 # undo info-center enable # vlan batch 10 20 30 # interface Ethernet0/0/1 //接口发送该vlan-id的数据帧时&#xff0c;不剥离帧中的…

JavaSE 类与对象

前言 我们之前学的都是面向过程&#xff0c;面向过程研究的是对单个对象的一种方法实现过程&#xff0c;比如求一个数的阶乘&#xff0c;强调的是怎么实现这个方法的过程&#xff0c;但对我们以后来说&#xff0c;如果想要应用到更广的层面&#xff0c;不能只是学习一个方法的…

JMeter 常见函数讲解

&#x1f4e2;专注于分享软件测试干货内容&#xff0c;欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; 如有错误敬请指正&#xff01;&#x1f4e2;交流讨论&#xff1a;加入1000人软件测试技术学习交流群&#x1f4e2;资源分享&#xff1a;进了字节跳动之后&#xff0c;才…

宠物社区系统宠物领养小程序,宠物救助小程序系统多少钱?

当前很多的宠物被抛弃和虐杀&#xff0c;它们没有选择权&#xff0c;我们强制性的把狗带进人类的生活中&#xff0c;然后又无情的抛弃&#xff0c;让它们无家可归&#xff0c;变成流浪狗&#xff0c;它们做错了什么&#xff1f;流浪动物被主人遗弃之后居无定所&#xff0c;时刻…

C语言【趣编程】我们怎样便捷输出空心的金字塔

目录 1问题&#xff1a; 2解题思路&#xff1a; 3代码如下&#xff1a; 4代码运行结果如下图所示&#xff1a; 5总结&#xff1a; r如若后续有不会的问题&#xff0c;可以和我私聊&#xff1b; 1问题&#xff1a; 2解题思路&#xff1a; 方法&#xff1a;找规律&#xff0…

AI系统ChatGPT源码+详细搭建部署教程+AI绘画系统+支持GPT4.0+Midjourney绘画+已支持OpenAI GPT全模型+国内AI全模型

一、AI创作系统 SparkAi创作系统是基于OpenAI很火的ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统&#xff0c;支持OpenAI-GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美&#xff0c;可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如…

2023/11/11

1. 实现字体渐变色 html <div class"gradient">实现字体渐变色 </div>css .gradient {display: inline-block;font-weight: 800;font-size: 40px;color: #fff;background: linear-gradient(90deg, #f00 0%, #000 50%, #00f 100%);background-clip: bo…

积分上限函数

定积分的形式 a&#xff1a;积分下限 b&#xff1a;积分上限 定积分的值与积分变量无关 积分上限函数的形式 x&#xff1a;自变量 t&#xff1a;积分变量 积分上限是变量&#xff0c;积分下限是常数 定积分的几何意义 x轴所围成面积 x轴以上面积为正 x轴以下面积为负 积分…

Linux学习教程(第一章 简介)4

第一章 简介 十一、Linux的主要应用领域有哪些? Linux 似乎在我们平时的生活中很少看到,那么它应用在哪些领域呢?其实,在生活中随时随地都有 Linux 为我们服务着。 1、网站服务器 用事实说话!访问国际知名的 Netcraft 网站 http:// www.netcraft.com,在 "Whats …

数据分析实战 | 泊松回归——航班数据分析

目录 一、数据及分析对象 二、目的及分析任务 三、方法及工具 四、数据读入 五、数据理解 六、数据准备 七、模型训练 八、模型评价 一、数据及分析对象 CSV文件&#xff1a;o-ring-erosion-only.csv 数据集链接&#xff1a;https://download.csdn.net/download/m0_7…

网络安全基础之php开发文件上传的实现

前言 php是网络安全学习里必不可少的一环&#xff0c;简单理解php的开发环节能更好的帮助我们去学习php以及其他语言的web漏洞原理 正文 在正常的开发中&#xff0c;文件的功能是必不可少&#xff0c;比如我们在论坛的头像想更改时就涉及到文件的上传等等文件功能。但也会出…

Leetcode刷题详解——单词搜索

1. 题目链接&#xff1a;79. 单词搜索 2. 题目描述&#xff1a; 给定一个 m x n 二维字符网格 board 和一个字符串单词 word 。如果 word 存在于网格中&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 单词必须按照字母顺序&#xff0c;通过相邻的单元格内的…

基于ubuntu 22, jdk 8x64搭建图数据库环境 hugegraph--google镜像chatgpt

基于ubuntu 22, jdk 8x64搭建图数据库环境 hugegraph download 环境 uname -a #Linux whiltez 5.15.0-46-generic #49-Ubuntu SMP Thu Aug 4 18:03:25 UTC 2022 x86_64 x86_64 x86_64 GNU/Linuxwhich javac #/adoptopen-jdk8u332-b09/bin/javac which java #/adoptopen-jdk8u33…

开源软件有漏洞,作者需要负责吗?是的——作者责任与社会共同关注开源

近日&#xff0c;禅道作者在开源中国发布的一篇文章引起了众多同行的围观&#xff0c;原因是该文章分享了一个开源协议在中国面临的 bug&#xff01;开源软件许可协议通常会表明作者不对用户使用该开源软件所造成的任何问题负责。但是这种条款&#xff0c;在中国&#xff0c;是…

Labview的分支判断

和其他的编程语言一样的。都会有switch,case, if ,else; 再combo box中实现 再后台程序中对应的写上逻辑就好了。

Android 解决CameraView叠加2个以上滤镜拍照黑屏的BUG (一)

1. 前言 这段时间&#xff0c;在使用 natario1/CameraView 来实现带滤镜的预览、拍照、录像功能。 由于CameraView封装的比较到位&#xff0c;在项目前期&#xff0c;的确为我们节省了不少时间。 但随着项目持续深入&#xff0c;对于CameraView的使用进入深水区&#xff0c;逐…

Linux系统初步了解

Linux系统由4个主要部分组成&#xff1a;内核、Shell、文件系统和应用程序。 本专题主要是围绕这四个来展开的。 POSIX&#xff08;可移植操作系统接口&#xff09;定义了操作系统应该为应用程序提供的标准接口&#xff0c;其意愿是获得源码级别的软件可移植性。所以Linux选择…

elemenui的Upload上传整合成数组对象

1. 普通直接上传 <el-upload action"" :before-upload"doBeforeUpload"><el-button type"success" size"mini">导入</el-button></el-upload> methods:{doBeforeUpload(file) {let reader new FileReader(…