[关闭]
@liruiyi962464 2025-01-02T17:37:36.000000Z 字数 3242 阅读 116

mysql升级8.0 同时保留之前的(包含5.7安装)

mysql


安装过程

1:5.7安装参考

https://blog.csdn.net/github_39698303/article/details/107831472

my.ini

  1. [mysqld]
  2. # 设置3306端口
  3. port=3306
  4. # 设置mysql的安装目录 ----------是你的文件路径-------------
  5. basedir=E:/mysql/mysql-5.7.26-winx64
  6. # 设置mysql数据库的数据的存放目录 ---------是你的文件路径data文件夹自行创建
  7. datadir=E:/mysql/mysql-5.7.26-winx64/data
  8. # 允许最大连接数
  9. max_connections=200
  10. # 允许连接失败的次数。
  11. max_connect_errors=10
  12. # 服务端使用的字符集默认为utf8mb4
  13. character-set-server=utf8mb4
  14. # 创建新表时将使用的默认存储引擎
  15. default-storage-engine=INNODB
  16. # 默认使用“mysql_native_password”插件认证
  17. #mysql_native_password
  18. #skip-grant-tables
  19. default_authentication_plugin=mysql_native_password
  20. sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
  21. # 设置为8小时
  22. wait_timeout = 28800
  23. # 根据需要增加,但请注意不要设置得过高
  24. max_allowed_packet=500M
  25. [mysql]
  26. # 设置mysql客户端默认字符集
  27. default-character-set=utf8mb4
  28. [client]
  29. # 设置mysql客户端连接服务端时默认使用的端口
  30. port=3306
  31. default-character-set=utf8mb4

1:解压

进入你下载解压后的Mysql安装目录,我这里是 D:\tool\mysql-8.0.37-winx64,并且创建空文件夹data 和 配置文件my.ini

2 配置my.ini

端口是因为已经安装的5.7版本,使用了3306,所以这里设置为3307

  1. [mysqld]
  2. # 设置3307端口
  3. port=3307
  4. # 设置mysql的安装目录 ----------是你的文件路径-------------
  5. basedir=D:/tool/mysql-8.0.37-winx64
  6. # 设置mysql数据库的数据的存放目录 ---------是你的文件路径data文件夹自行创建
  7. datadir=D:/tool/mysql-8.0.37-winx64/data
  8. # 允许最大连接数
  9. max_connections=200
  10. # 允许连接失败的次数。
  11. max_connect_errors=10
  12. # 服务端使用的字符集默认为utf8mb4
  13. character-set-server=utf8mb4
  14. # 创建新表时将使用的默认存储引擎
  15. default-storage-engine=INNODB
  16. # 默认使用“mysql_native_password”插件认证
  17. #mysql_native_password
  18. default_authentication_plugin=mysql_native_password
  19. sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
  20. # 设置为8小时
  21. wait_timeout = 28800
  22. # 根据需要增加,但请注意不要设置得过高
  23. max_allowed_packet=500M
  24. [mysql]
  25. # 设置mysql客户端默认字符集
  26. default-character-set=utf8mb4
  27. [client]
  28. # 设置mysql客户端连接服务端时默认使用的端口
  29. port=3307
  30. default-character-set=utf8mb4

3设置环境变量

  1. //我的电脑 --> 属性 --> 高级系统设置 --> 环境变量 --> 系统变量(Path)
  2. //将mysql8.0版本安装的bin路径添加到环境变量中去
  3. D:\tool\mysql-8.0.37-winx64\bin

4关闭原来的mysql服务

关闭原来的mysql服务(原来的是MYSQL)
此电脑 --> 右键 --> 管理 --> 服务和应用程序 --> 服务 --> 找到原来版本的mysql停掉

5 重点

以管理员身份打开黑窗口(CMD),切换到mysql8安装目录的bin目录下执行(以下所有的命令都必须是以管理员身份打开的cmd)

5.1先执行

  1. mysqld --defaults-file=D:/tool/mysql-8.0.37-winx64/my.ini --initialize --console
  2. mysqld --defaults-file=E:/mysql/mysql-8.0.37-winx64/my.ini --initialize --console

执行完成之后会有一个root的初始密码,也可以不记录,修改配置文件my.ini,增加免密登录

  1. // 在[mysqld]下
  2. skip-grant-tables

5.2在执行

  1. mysqld --install MySQL80

5.3修改注册表

  1. //修改注册表中mysql57的路径 win+R 输入regedit 之后找到路径
  2. //计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MySQL57,修改ImagePath,把值改成:
  3. "D:\tool\mysql-8.0.37-winx64\bin\mysqld.exe" --defaults-file=D:\tool\mysql-8.0.37-winx64\my.ini MySQL80
  4. "E:\mysql\mysql-8.0.37-winx64\bin\mysqld.exe" --defaults-file=E:\mysql\mysql-8.0.37-winx64\my.ini MySQL80

5.4启动服务

  1. net start MySQL80 启动
  2. net stop MySQL80 停止

5.5登录

方案一

  1. mysql -uroot -p 刚生成的那个root的初始密码登录 (建议别用这个 很难用)
  2. // 如果报错
  3. ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost:3306' (10061)
  4. // 则使用
  5. mysql -uroot -p -h localhost -P 3307

方案二

  1. 5.1配置免密登录

进入后,执行修改密码

  1. ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
  2. 或者
  3. SET PASSWORD FOR 'root'@'localhost' = '123456';
  4. //如果使用方案二,修改完成后,打开my.ini文件,去掉skip-grant-tables

开放外部连接5.7

  1. // 按照顺序执行
  2. // 切换数据库
  3. uer mysql;
  4. // 执行更新权限语句
  5. update user set Host='%' where User='root';
  6. // 查看权限
  7. SHOW GRANTS FOR 'root'@'%';
  8. // 刷新服务器配置
  9. FLUSH PRIVILEGES;

开放外部连接8

  1. // 按照顺序执行
  2. // 切换数据库
  3. USE mysql;
  4. // 执行更新权限语句
  5. UPDATE user SET host = '%' WHERE user = 'root';
  6. // 查看权限
  7. SHOW GRANTS FOR 'root'@'%';
  8. // 刷新服务器配置
  9. FLUSH PRIVILEGES;
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注