MySQL新建存储过程出现:ERROR 1558 (HY000): Column count of mysql.proc is wrong. Expected 20, found 16. Create
我在MySQL版本:Ver 14.14 Distrib 5.1.61上创建存储过程是没有问题的,但是在版本:Ver 14.12 Distrib 5.0.26上面创建存储过程的时候就出现了上面的错误。甚至使用show procedure status
查看存储过程都会报上面的错误。
错误原因:
是由于你曾经升级过MySQL,或用不同的MySQL版本进行备份迁移恢复。升级和迁移完后未使用mysql_upgrade升级数据结构造成的。
mysql.proc:
是MySQL的系统表,用来记录存储过程或函数的信息。使用desc mysql.proc
查看上面不同版本的MySQL的mysql.proc,果然出错的MySQL的mysql.proc只有16列。
解决办法:
使用命令:mysql_upgrade -u[username] -p[password]
就可以解决。
查找MySQL的安装目录找到mysql_upgrade :
mysql_upgrade在MySQL的安装目录的bin中。可以使用如下命令查找MySQL的安装目录:ps -ef|grep -w mysql
,我获取的结果如下:
/usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql --log-error=/usr/local/mysql/data/Tencent_IM.err --pid-file=/usr/local/mysql/data/Tencent_IM.pid --socket=/tmp/mysql.sock --port=3306
/usr/local/mysql 是指:mysql的安装路径。
/usr/local/mysql/bin 是指:mysql的运行程序存放路径,其中就包括 mysql_upgrade。
/usr/local/mysql/data 是指:mysql数据库文件的存放路径。
注意事项:
使用mysql_upgrade
对数据库的数据表结构等升级时,数据库引擎MyISAM 会做检查、修复的动作,InnoDB 执行 mysql_upgrade 没有作用。
参考文献
[1]Column count of mysql.proc is wrong. Expected 20, found 16
MySQL新建存储过程出现:ERROR 1558 (HY000): Column count of mysql.proc is wrong. Expected 20, found 16. Create相关推荐
- ERROR 3009 (HY000): Column count of mysql.user is wrong. Expected 45, found 42. Created with MySQL 5
设置mysql远程访问报错 ERROR 3009 (HY000): Column count of mysql.user is wrong. Expected 45, found 42. Create ...
- mysql1085报错:ERROR 1805 (HY000): Column count of mysql.user is wrong. Expected 45, found 46. The tabl
文章目录 前言 一:现象 二:分析原因 三:解决 经过查阅资料,尝试通过升级的方式解决 如有疑问可评论区交流! 前言 一:现象 在修改用户的时候发现报错:ERROR 1805 (HY000): Col ...
- mysql1558错误,mysql删除用户错误ERROR 1558解决办法
1.错误提示 ERROR 1558 (HY000): Column count of mysql.user is wrong. Expected 43, found 42. Created with ...
- 修改xampp中的mysql的密码报错,ERROR 1348 (HY000): Column 'Password' is not updatable
xampp中的mysql(MariaDB)默认密码为空,进入mysql的bin目录,输入mysql -u root -p,回车,无密码登录: 查看所有数据库,选择mysql数据库: show data ...
- MYSQL导出数据报错ERROR 1290 (HY000) 和 ERROR 1 (HY000)
问题1.ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot ...
- mariadb无法update修改root密码ERROR 1348 (HY000): Column 'Password' is not updatable
https://www.techgalery.com/2019/09/error-1348-column-password-is-not.html 如本博客标题所述,当我们尝试更新root密码数据库( ...
- MySQL_解决ERROR 2006 (HY000) at line XX MySQL server has gone away问题
MySQL_解决ERROR 2006 (HY000) at line XX MySQL server has gone away问题 参考文章: (1)MySQL_解决ERROR 2006 (HY00 ...
- Mysql添加用户错误:ERROR 1364 (HY000): Field ‘ssl_cipher‘ doesn‘t have a default value解决方法
Mysql添加用户错误:ERROR 1364 (HY000): Field 'ssl_cipher' doesn't have a default value解决方法 参考文章: (1)Mysql添加 ...
- mysql导入数据报错ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it
参考:https://blog.csdn.net/u011677147/article/details/64129606 参考:http://blog.itpub.net/31015730/views ...
最新文章
- VmWare 与 宿主主机通信 STEP BY STEP (适用于刚開始学习的人)
- 分支管理---创建与合并分支
- bg感_【0328】BG推文 | 5本我在逃生游戏里养娃娃+岁月缱绻已无你+关于我比女主苏这回事+消失的白月光又回来了等...
- pb11 打印 自定义纸张_pb自定义纸张(连续走纸)
- 数据科学与计算机学院张治国,张治国(河海大学机电工程学院副教授)_百度百科...
- 有关JAVA中不同方法对String连接性能的总结
- 【编程珠玑】第四章 编写正确的程序
- JAVA——利用wait和notify实现生产者和消费者
- 安装apk报错INSTALL_FAILED_UPDATE_INCOMPATIBLE的解决方法
- AT指令:常见的AT命令
- Nginx源码阅读 --- nginx evnet事件接受请求时,函数执行过程
- python精妙算法_YOLOv4:高速物体检测的精妙之处
- Win10下 Java环境变量配置
- mediatek无线usb网卡驱动 linux,Ralink雷凌USB无线网卡驱动5.1.7.0版 Ralink雷凌USB无线网卡驱动5.1.7.0版 无线网卡驱动 雷凌...
- C++类的构造函数及操作符()重载
- 你离运营只差一个打卡签到功能 早晚安打卡 小来早晚安打卡 功能一样 是一个唯一用户主动去分享的功能
- python 全栈开发,Day128(创建二维码,扫码,创建玩具的基本属性)
- 开鑫金服落实“同心圆”工程 为老年投资人保驾护航
- python求素数积_python求质数的3种方法
- 老男孩教育Linux运维培训32期决心书