• mysql版本升级


    在还原线上的备份时,本地的数据库会报错,提示类似于插入数据的时候,有中文的地方,出错。反复对比下来,发现是本地的版本比线上的低,本地是5.7.1x,线上的是5.7.2x,所以准备直接升级到5.7的最高版本5.7.31。

    升级过程中遇到了一点问题,这里记录一下

    升级步骤

    • 下载安装文件

    • 开始安装,安装程序会自动识别,标明这次是升级更新

    • 执行到最后一步,询问是否备份并且检测数据库,这里因为少了步骤,当时也不清楚,就没有执行,而是选择下面的跳过

    • 升级完成,打开数据库发现,原来的数据库少了

    • 打开数据库数据目录下的err文件,发现如下报错

    [Warning] InnoDB: Table mysql/innodb_index_stats has length mismatch in the column name table_name.  Please run mysql_upgrade
    
    • 执行mysql_upgrade -u root -p,提示如下报错,这可能因为升级版本之间有默认数据库表的字段变了,导致访问用户名等配置信息出错
    cannot setup server variables
    
    • 在数据库配置文件my.ini中的[mysqld]下面添加skip-grant-tables,然后重启数据库

    • 直接执行mysql_upgrade

    • 等待运行完成

    • 重启数据库

    • 看一下原来的数据有没有回来

    • 如果没有回来,再看一下err文件,可能有如下报错

    [Note] Aborted connection 3 to db: 'pay' user: 'root' host: 'localhost' (Got an error reading communication packets)
    

    这是因为你的root@localhost权限不够,把权限全打开,再试一下。

  • 相关阅读:
    npmcnpmyarn yarn 关于源和代理的问题
    react : umi 引入 antd 踩坑
    Ant Design Pro 学习笔记:数据流向
    dva + umi 学习笔记
    简单分析 ztree 源码
    X-Tag实战:给博客加一个隐藏侧栏的功能
    javascript中var,let,const的区别
    linq 延迟执行带来的困扰
    如何实现能像windows 窗体一样改变大小的控件 Silverlight
    一个循环递归遍历问题
  • 原文地址:https://www.cnblogs.com/studywithallofyou/p/13691316.html
Copyright © 2020-2023  润新知