MYSQL-windows安装配置两个或多个版本MYSQL

ops/2024/10/18 16:28:39/

安装第一个mysql很简单,这里不再赘述。主要说说第二个怎么安装,服务怎么配置。

1. 从官网下载第二个MySQL并安装

一般都是免安装版了,下载解压到某个文件目录下(路径中尽量不要带空格或中文),再新建一个my.ini文件(或者从第一个MYSQL里面复制一个),按照格式改一下,重点改port(端口不能相同)
重点强调下,一定要按照格式修改,路径这种千万不要错。比如是\还是\一定按照注释里的格式来写,不然后面会出问题。
my.ini示例如下:

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
# 设置端口,不设置默认3306
port = 3307
# 设置mysql的安装目录
basedir=D:\\software\\mysql-8.4.0-winx64
# 设置 mysql数据库的数据的存放目录,MySQL 8+ 不需要以下配置,系统自己生成即可
# datadir=D:\\software\\mysql-8.4.0-winx64 
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# MySQL8.0默认的身份验证插件为caching_sha2_password,这将导致远程户端无法连接,可使用“mysql_native_password”插件认证解决客户端无法连接的问题,mysql_native_password再MySQL8.0中已过时,但任然可使用
# 从MySQL8.4开始,配置为 mysql_native_password=ON
mysql_native_password=ON
# default_authentication_plugin=mysql_native_password 此配置是在8.4以下的版本中的配置方法,8.4无此项

2. 系统环境变量Path配置一下

在这里插入图片描述

3. CMD以管理员身份进入第二个MySQL安装目录的bin目录下

这点非常重要!!!如果你不进入到第二个MySQL安装目录的bin目录下,后续所有初始化和安装服务操作都会跟第一个有冲突。

4. 初始化第二个MySQL

执行如下命令:
(示例中的路径需要替换成自己的安装目录)

mysqld --defaults-file=D:/software/mysql-8.4.0-winx64/my.ini --initialize --console
或
mysqld --initialize-source  (这种方式我也用过,建议还是第一种。)

5.复制初始化的密码(后续要用)

第二步执行后会有一段文字提示,里面有初始化后的密码,大概是这样一串,复制出来
root@localhost: lqDun&Xe=4Ig
冒号后面就是初始密码了。如果忘记密码了可以去安装目录下的data文件夹下找一个.err后缀的文件,查找A temporary password is这句话大概就可查到密码了。
在这里插入图片描述

如果在.err文件看到下图这句话也不用担心,那就是初始密码为空。
在这里插入图片描述

6. 安装配置第二个MySQL服务(示例中的路径需要替换成自己的安装目录)

此处注意服务名不要与第一个相同,自己定义一下
(检查是否CMD以管理员身份进入第二个MySQL安装目录的bin目录下)

mysqld install MySQL8.4 --defaults-file=D:/software/mysql-8.4.0-winx64/my.ini

7. 修改注册表

在这里插入图片描述

运行redegit打开注册表。搜索服务名称,修改对应的ImagePath。
没改之前你看到的ImagePath的value,双引号里面可能是第一个MYSQL的路径,改成第二的就好了。
注意先备份原来的,万一改错了还能回退。

"D:\software\mysql-8.4.0-winx64\bin\mysqld" --defaults-file=D:/software/mysql-8.4.0-winx64/my.ini MySQL8.4

8. 启动服务

net start MySQL8.4

如果服务配置错了,想删除,可以使用如下命令操作(必须是以管理员身份打开CMD):

查看服务
sc queryex type=service state=all
删除服务
sc delete MySQL8.4

到这里整个过程就差不多了,如果想要修改密码或调整root访问权限就继续往下看。

mysql_MySQLbin_85">9. CMD窗口继续连接mysql (必须在第二个MySQL安装目录的bin目录下执行)

mysql连接3306的方式:mysql -u root -p
mysql连接非3306的方式,我设置的第二个MYSQL默认端口为3307:mysql -hlocalhost -P3307 -u root -p

10. 输入密码

上面初始化完记录的的密码复制过来即可。
如果密码回空,直接回车就好。

11. 修改密码为自己容易记住的密码(初始化的密码一般比较难记)

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

12. 授权,让root能通过IP访问。(有需要就做)

use mysql;
update mysql.user set host='%' where user='root';

13.测试连接

到这里就结束啦,如果出现其他问题可以留言讨论。
没做过总归会遇到各种奇奇怪怪的问题,我也是一样,不要放弃呀,总归会有解法的。

参考:https://blog.csdn.net/sinat_40770656/article/details/101027777


http://www.ppmy.cn/ops/124753.html

相关文章

Linux 内核中USB鼠标枚举失败问题总结

一、环境: 机器平台:linux 内核版本:linux-3.4 二、问题: USB鼠标接入后报错,log显示设备无法枚举 usb 1-1: new low-speed USB device number 10 using musb-hdrc hub 1-0:1.0: unable to enumerate USB device o…

Django学习笔记之Django基础学习

Django笔记 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 例如:第一章 Python 机器学习入门之pandas的使用 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录…

【WebGIS】Cesium:Viewer 初始化、地图加载与基础交互

Cesium 是一个功能强大、基于 WebGL 的开源三维地球引擎,它允许用户在浏览器中渲染高性能的三维地图和地球。本文将带领新手入门 Cesium,学习如何初始化 Cesium Viewer,加载地图和地形,了解地球的基础交互操作,并掌握如…

RISC-V知识点目录

分支预测 分支预测概述https://blog.csdn.net/zhangshangjie1/article/details/136947089?sharetypeblogdetail&sharerId136947089&sharereferPC&sharesourcezhangshangjie1&spm1011.2480.3001.8118分支指令的方向预测https://blog.csdn.net/zhangshangjie1/a…

AJAX 和 fetch到底是什么

文章目录 1. **AJAX 是什么?**示例: 2. **fetch 是什么?**示例: 3. **区别和联系**4. **总结:** AJAX 和 fetch 不是完全相同的东西,但它们有一些联系。它们都是用于在网页中实现异步请求的方式&#xff0c…

Leetcode: 3158. 求出出现两次数字的 XOR 值

题目 给你一个数组 nums ,数组中的数字 要么 出现一次,要么 出现两次。 请你返回数组中所有出现两次数字的按位 XOR 值,如果没有数字出现过两次,返回 0 。 输入:nums [1,2,1,3] 输出:1 解释:…

使用verilog设计实现简单神经网络加速器及其仿真

以下是使用FPGA实现简单神经网络加速器的基本步骤: **一、神经网络模型选择与简化** 1. **选择合适的神经网络模型** - 对于简单的神经网络加速器,可以选择多层感知机(MLP)作为基础模型。MLP由输入层、隐藏层和输出层组成,各层之间通过全连接方式连接。 - 例如,构…

8.优化存储过程的性能(8/10)

优化存储过程的性能 1.引言 存储过程是数据库系统中预先编写好的SQL语句集合,它们被保存在数据库服务器上,可以在需要时被调用执行。存储过程的使用可以提高数据库操作的效率,减少网络通信,并且可以封装复杂的逻辑,使…