博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Mysql/Mariadb 升级注意事项
阅读量:6087 次
发布时间:2019-06-20

本文共 758 字,大约阅读时间需要 2 分钟。

因需要使用到分区表,在业务不中断的情况下,可以新增分区,需要将原来的Mariadb10.1.25版本升级到Mariadb10.3.8。

1、升级步骤如下

1)新搭建Mariadb10.3.8版本的DB

2)全备份Mariadb10.1.25版本数据(表结构、存储过程、函数、触发器等)

3)将Mariadb10.1.25的备份数据恢复到Mariadb10.3.8

4)使用/u02/mysql/bin/mysql_upgrade 升级

2、升级并导入备份后遇到问题

但是其中遇到一个问题,就是在导入备份后,由于Mariadb10.1.25版本的mysql.proc表有20个列,

Mariadb10.3.8有21个列,导入后,Mariadb10.3.8的mysq.proc表被Mariadb10.1.25的表覆盖。

导致后面执行存储过程是,存储过程报错:

Column count of mysql.proc is wrong. Expected 21, found 20. The table is probably corrupted

表可能已损坏

3、解决方法

查看这两个版本mysql.proc表的表结构,Mariadb10.3.8比Mariadb10.1.25,多一列 aggregate,

导入备份后,重建的表不包含这列,一次,需要重建

alter table  mysql.proc add column  `aggregate` enum('NONE','GROUP') NOT NULL DEFAULT 'NONE';

最后,再运行一次/u02/mysql/bin/mysql_upgrade

 

转载于:https://www.cnblogs.com/xibuhaohao/p/10112812.html

你可能感兴趣的文章
使用gson-1.6.jar解析json
查看>>
AC Milan VS Juventus(模拟)
查看>>
CentOS两台服务器利用scp拷贝文件
查看>>
SQL DatePart函数使用
查看>>
asp.net页面后退,重复弹出上一页对话框处理办法
查看>>
docker 学习
查看>>
python twilio 短信群发 知识留存
查看>>
爆款小程序是如何诞生的?
查看>>
C#中结构体与类的区别
查看>>
phpstorm配置php脚本执行
查看>>
2018 .NET开发者调查报告: .NET Core 是怎么样的状态
查看>>
Spring Boot Cache配置 序列化成JSON字符串
查看>>
mysql group by using filesort优化
查看>>
自定义cnblogs样式小结
查看>>
AM335x移植linux内核_转
查看>>
Nginx 介绍
查看>>
Bat相关的项目应用
查看>>
NativeClient开发指南
查看>>
游戏人物属性如何设计
查看>>
Docker源码分析(五):Docker Server的创建
查看>>