MySQL 5.7怎么升级到8.0

技术MySQL 5.7怎么升级到8.0这篇文章主要讲解了“MySQL 5.7怎么升级到8.0”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“MySQL 5.7怎么升级到8.

本文主要讲解“如何将MySQL 5.7升级到8.0”。本文的解释简单明了,易学易懂。现在,请跟随边肖的思路一起学习和学习“如何将MySQL 5.7升级到8.0”!

为什么升级到MySQL 8.0

基于安全考虑

基于性能和稳定性考虑:

Mgr复制、并行复制写集和其他功能、性能提升

的新功能:

散列连接,窗口函数,DDL即时,json支持

原始环境中版本太多,统一版本

8.0版本已经基本达到稳定期,可以大批量投入生产环境。

升级之前需要了解

数据库字典升级

模式,mysql,信息模式,性能模式,sys

示例:密码测试mysql _ native _ password rarr缓存_ sha2 _密码

2.关键词是否兼容

https://dev.mysql.com/doc/refman/8.0/en/keywords.html

查询中添加的关键字

3.SQL兼容吗?

组处理、触发器、存储过程不兼容

5.6您可以运行选择标识,按名称从组中计数(*);

5.7和8.0允许sql_mode控制吗?

4.数据文件存储格式可以直接升级吗?

Perconal和mysql存储引擎总是完全兼容的。

5.现有应用程序的兼容性是否令人满意?

自定义函数,一些非标准的SQL语句等等。

6.密码策略

What Is New in MySQL 8.0

作为一名数据库管理员,需要对8.0的一些功能有基本的了解。

在add函数中添加

不推荐使用的功能

功能移除移除功能

MySQL  5.7怎么升级到8.0

MySQL  5.7怎么升级到8.0

MySQL  5.7怎么升级到8.0

升级准备事项

了解了8.0的特性后,升级需要提前验证和准备。

测试库升级,应用验证

数据库升级,没有意识到问题。

my.cnf配置信息的调整

操作方法不兼容,影响复制。

平滑过滤器,例如首先将一个从库升级到所有从库。

最短的停机时间、相同的生产数据恢复到环境、模拟升级和评估时间。

如何验证数据:行数、表数等。

考虑回滚方案。

数据库后备

升级前检查

与之前的5.6升级到5.7不同,Mysql8.0仍然提供了很多便利。现在可以通过mysql shell确认了。

以下两种方式

e>#mysqlsh root:123456@192.168.244.130:3410 -e 'util.checkForServerUpgrade({"targetVersion":"8.0.19","configPath":"/etc/my3410.cnf"})';  MySQL  JS > util.checkForServerUpgrade('root@192.168.244.130:3410', {"password":"123456", "targetVersion":"8.0.11", "configPath":"/etc/my3410.cnf"})

MySQL 5.7怎么升级到8.0

MySQL 5.7怎么升级到8.0

MySQL 5.7怎么升级到8.0

按照提示的要求进行更改

MySQL 5.7怎么升级到8.0

虽然shell做的很好,但还是存在一些缺陷。

比如以下内容都不会存在提示:

1. basedir,

2. sql_mode ,

3. 半同步配置,

4. 密码策略:default_authentication_plugin = mysql_native_password

开始升级

官网下载对应的tar包

https://downloads.mysql.com/archives/community/

下面是单机升级,高可用架构下 需要先升级从库,在逐步升级主库。

执行mysql_upgrade命令,会提示如下:

#/mysql8.0.19/bin/mysql_upgrade -uroot -p123456

MySQL 5.7怎么升级到8.0

在MySQL 8中mysql_upgrade客户端现已弃用。升级客户端执行的操作现在由服务器完成。

要升级,请使用较旧的数据目录启动新的 MySQL 二进制文件。自动修复用户表。升级后不需要重新启动。

所以必须在测试环境模拟准备对应SQL语句

正确操作如下:

1)登录服务器进行正常关闭:innodb_fast_shutdown是默认是1,常常认为是安全关闭

关闭innodb参数确认

mysql> show variables like 'innodb_fast_shutdown';+----------------------+-------+| Variable_name        | Value |+----------------------+-------+| innodb_fast_shutdown | 1     |+----------------------+-------+1 row in set (0.00 sec)

确保数据都刷到硬盘上,更改成0

mysql> set global innodb_fast_shutdown=0;Query OK, 0 rows affected (0.01 sec)  mysql> shutdown;Query OK, 0 rows affected (0.00 sec)  *进行备份。

2)用mysql8.0.19客户端直接启动

启动mysql服务

[root@ss30 bin]# /opt/mysql8.0.19/bin/mysqld_safe --defaults-file=/etc/my3400.cnf --user=mysql &  [1] 15400  [root@ss30 bin]# 2020-04-25T13:07:16.591560Z mysqld_safe Logging to '/opt/data3400/logs/error.log'.  2020-04-25T13:07:16.636879Z mysqld_safe Starting mysqld daemon with databases from /opt/data3400/mysql  ##打开另一个窗口查看error日志  [root@ss30 ~]# tail -f /opt/data3400/logs/mysql_error.log

登录服务器确认

[root@ss30 ~]# mysql -uroot -p -S /opt/data3400/mysql/mysql.sockEnter password:Welcome to the MySQL monitor.  Commands end with ; or \g.Your MySQL connection id is 10Server version: 8.0.19 MySQL Community Server - GPLCopyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> select version();+-----------+| version() |+-----------+| 8.0.19    |+-----------+1 row in set (0.01 sec)

无myisam引擎

mysql> SELECT table_schema,table_name,engine FROM information_schema.tables where engine!='InnoDB';

剩下的就是验证 和 业务确认否应用正常。

感谢各位的阅读,以上就是“MySQL 5.7怎么升级到8.0”的内容了,经过本文的学习后,相信大家对MySQL 5.7怎么升级到8.0这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/85701.html

(0)

相关推荐

  • zabbix如何配置grafana图形显示插件

    技术zabbix如何配置grafana图形显示插件这篇文章主要介绍了zabbix如何配置grafana图形显示插件,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解

    攻略 2021年11月18日
  • phpmyadmin如何实现root账户外部访问

    技术phpmyadmin如何实现root账户外部访问本篇内容介绍了“phpmyadmin如何实现root账户外部访问”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这

    攻略 2021年11月9日
  • 线性回归理解和应用例子

    技术线性回归理解和应用例子 线性回归理解和应用例子HaHa,没错又是作业...
    理解:
    线性回归是利用数理统计中回归分析,来确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方法。
    这句话里的“相

    礼包 2021年11月22日
  • vue中怎么使用vue-cropper裁剪图片

    技术vue中怎么使用vue-cropper裁剪图片这篇文章主要讲解了“vue中怎么使用vue-cropper裁剪图片”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“vue中

    攻略 2021年11月24日
  • 精益求精是什么意思,精益求精的益是什么意思

    技术精益求精是什么意思,精益求精的益是什么意思精益求精精益求精是什么意思,比喻已经很好了,还要求更好。《论语·学而》“《诗》云:如切如磋,如琢如磨” 宋 朱熹 集注:“言治骨角者,既切之而复磋之;治玉石者,既琢之而复磨之

    生活 2021年10月20日
  • 比尔吉沃特是几区,lol英雄联盟每个大区的含义

    技术比尔吉沃特是几区,lol英雄联盟每个大区的含义每个服务器的名字都代表着符文之地的地区或势力。各服务器名称及含义:电信一区:艾欧尼亚,艾欧尼亚是寻求心灵进化的天堂,位于瓦罗然大陆之外,诺克萨斯东北;电信二区:祖安,祖安

    生活 2021年10月26日