1. 下载数据库,配置环境变量

因为是安装两个MySQL数据库,端口号要不一样,MySQL默认端口号是3306,建议先配置非默认端口号,以免出现问题

1.1 官网下载5.7和8.0的压缩包

  • 我下载的是5.7.238.0.23

1.2 解压到目录下

  • 将压缩包解压到你要安装的目录,我这里是放到D:\develop\MySQL文件夹下

1.3 配置系统变量

在系统变量中添加MYSQL5_HOMEMYSQL8_HOME两个变量,变量值就是你的解压路径,然后在Path中将这两个的bin添加进去,完成后保存即可

2. 安装MySQL8.0

2.1 创建配置文件

在根目录下创建my.ini的文件,文件的编码要是ANSI,然后再编辑配置文件保存

[mysql]
# 设置 mysql 客户端默认字符集
default-character-set=utf8 [mysqld]
#设置端口
port = 3307 # 设置 mysql 的安装目录
basedir=D:\develop\MySQL\mysql-8.0.23-winx64 # 设置 mysql 数据库的数据的存放目录
datadir=D:\develop\MySQL\mysql-8.0.23-winx64\data # 允许最大连接数
max_connections=10000 # 允许最大连接人数
max_user_connections=1000 # 服务端使用的字符集默认为 8 比特编码的 latin1 字符集
character-set-server=utf8 # 创建新表时将使用的默认存储引擎
#default-storage-engine=MyISAM
default-storage-engine=InnoDB # 连接时间
wait_timeout=31536000
interactive_timeout=31536000

2.2 初始化MySQL

确保根目录下没有data文件夹,如果有,就先删除,然后cmd进入到bin目录下

执行mysqld --initialize

  • 如果执行mysqld --initialize-insecure,则创建的root默认没有密码

完成初始化,自动在根目录下创建一个data文件夹

此时,mysql的root用户密码默认是空的,如果你没有加上-insecure,则会分配随机密码,密码在data目录下的xxx.err文件里:

由于我的默认空密码,所以没有显示,否则会在这末尾有显示

2.3 安装MySQL服务

在命令行中输入mysqld --install MYSQL80(MYSQL80是服务名称,可以自定义,必须要加上,因为默认的是MYSQL,如果不加,两个数据库就会冲突了)

2.4 开启MySQL服务

在命令行中输入net start MYSQL80开启MySQL8.0服务

如果输入命令后提示无法开启,如图:

应该是服务配置有问题,打开系统的服务配置,找到MYSQL80

右击查看属性,很明显,这路径错了(应该是以前安装过MySQL,没删除干净,导致缓存)

不过没关系,我们可以手动修改

成功启动!

2.5 修改初始化密码

命令行输入mysql -u root -P 3307 -p(-P是代表端口号,-p代表密码,-u代表用户)进入MySQL,由于我没有密码,所以直接回车进入,如果有密码,将生成的密码填入即可

然后修改密码,输入ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

最后刷新权限,输入flush privileges

到此,MySQL8就安装成功了

3. 安装MySQL5.7

同理,和安装MySQL8.0基本是一样的,只是有一些细微差别

3.1 端口号要不同

MySQL5.7对于我来说比较常用,所以我将它设置为3306默认端口号,同时路径也要修改

[mysql]
# 设置 mysql 客户端默认字符集
default-character-set=utf8 [mysqld]
#设置端口
port = 3306 # 设置 mysql 的安装目录
basedir=D:\develop\MySQL\mysql-5.7.23-winx64 # 设置 mysql 数据库的数据的存放目录
datadir=D:\develop\MySQL\mysql-5.7.23-winx64\data # 允许最大连接数
max_connections=10000 # 允许最大连接人数
max_user_connections=1000 # 服务端使用的字符集默认为 8 比特编码的 latin1 字符集
character-set-server=utf8 # 创建新表时将使用的默认存储引擎
#default-storage-engine=MyISAM
default-storage-engine=InnoDB # 连接时间
wait_timeout=31536000
interactive_timeout=31536000

最新文章

  1. [Java基础] Java中List.remove报错UnsupportedOperationException
  2. 算法系列:FFT 001
  3. SQL*Loader之CASE5
  4. Ideal Forms – 帮助你建立响应式 HTML5 表单
  5. 使用File类递归列出E盘下全部文件
  6. nginx: [error] invalid PID number "" in "/usr/local/nginx/logs/nginx.pid"
  7. Inversions
  8. 禁止Android的StatusBar下拉
  9. sqlserver中Profiler的使用
  10. dedecms _ 当前位置问题的代码
  11. [原创]零基础R语言教程---第二课---R语言入门
  12. 从今天开始学习Java了
  13. 使用mongoose和bcrypt实现用户密码加密
  14. English-英语日常交流语句
  15. 【PyTorch深度学习60分钟快速入门 】Part4:训练一个分类器
  16. nodejs+nginx获取真实ip
  17. android本地数据库,微信数据库WCDB for Android 使用实例
  18. SQLServer2008/2005 生成数据字典语句
  19. 对比两个表中,字段名不一样的SQL
  20. linux内核源码之基础准备篇

热门文章

  1. python之commands和subprocess入门介绍(可执行shell命令的模块)
  2. HTML的基础语法
  3. 设计模式—singleton(单例模式)
  4. 用Python优雅的写出送给女儿的藏头诗
  5. [Kick Start] 2021 Round A
  6. OxyPlot.SkiaSharp显示中文乱码的问题
  7. [递推]B. 【例题2】奇怪汉诺塔
  8. 02-MySQL主要配置文件
  9. Dynamics CRM调用选择用户弹窗
  10. Java常用类库与技巧