个人亲测,在win10系统下安装多实例mysql8.0详细教程
由于公司的新项目需要导入sql脚本,需要更高版本的mysql数据库,原来的数据库我也不想删除和升级,因此安装了第二个mysql8的实例,废话不多说,步骤如下:
1、下载mysqlGPL版本,我下载的版本号为mysql-8.0.16-winx64.zip:
地址链接:https://dev.mysql.com/downloads/file/?id=485812
2、解压此安装包到安装目录D:\software下,解压后完整目录是D:\software\mysql-8.0.16-winx64;
3、配置环境变量,右键这台电脑——属性——高级系统设置——环境变量——path里面添加你的bini的安装目录,比如我的是D:\software\mysql-8.0.16-winx64\bin;
4、在D:\software\mysql-8.0.16-winx64目录下增加my.ini文件(j具体方法是右键新建txt文件,把文件名改为my.ini,再用记事本打开),注意里面的data目录不用自己建立,下一步初始化后自动会创建,内容如下:
[mysqld]
# 设置3307端口
port=3307
# 设置mysql的安装目录
basedir=D:\\software\\mysql-8.0.16-winx64
# 设置mysql数据库的数据的存放目录
datadir=D:\\software\\mysql-8.0.16-winx64\\Data # 此处同上
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3307
default-character-set=utf8
5、初始化mysql数据库
以为管理员身份运行cmd,这里注意以管理员身份运行(win10系统在左下角搜索框输入cmd,再右键命令提示符,选择第一项”以管理员运行”)
在安装的目录下输入以下命令:mysqld install MySQL80-3316 --defaults-file="D:\software\mysql-8.0.16-winx64\my.ini",初始化后会生成data文件和一个密码,记住它。
6、win10系统在左下角搜索框输入regedit打开注册表,找到文件HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MySQL80-3316,把里面的ImagePath改为以下参数:
"D:\software\mysql-8.0.16-winx64\bin\mysqld" --defaults-file=D:\software\mysql-8.0.16-winx64\my.ini MySQL80-3307
7、启动mysql服务
net start MySQL80-3307
8、进入目录
cd D:\software\mysql-8.0.16-winx64后输入mysql -uroot -p 刚刚复制的密码
9、修改root的密码为123456
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
10、刷新权限:
flush privileges;
至此,安装完成,按照此步骤一步步来应该是没有问题的,如若有问题请在下方留言一起探讨!
原文地址:https://www.cnblogs.com/jmwan/p/11042309.html
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 生成N位格雷码
- sort 升序还是降序?priority_queue 大根堆还是小根堆?
- 将2N个整数分成两组,每组有N个数,并且满足,这两组的差的绝对值最小。
- C++11正则表达式 ECMAScript文法
- Flutter基础widgets教程-Divider篇
- std::vector扩容机制,.按1.5倍取整扩容,如下。
- 求一个数的临近的较大的2的整数次幂
- 在文件IO操作中,合理使用缓存。
- Flutter基础widgets教程-Drawer篇
- C++ 实现可变参数
- C++ 单例模式
- c++ 日志类 线程安全+缓存
- C++ 实现通过类名来进行实例化(反射机制?)
- Flutter基础widgets教程-ExpansionPanel篇
- muduo TcpServer粗略过程