Pychram IDE链接MySQL下更新数据的问题总结

一、今天下午的数据库更新问题做个总结,数据更新的时候出现如下报错: 


Failed to retrieve routines in mysite_db.
[42S02][1146] Table 'mysql.proc' doesn't exist
and 1 duplicate reports (7s 456ms)  这就是说数据库的系统表丢失,也就是说这个错误是由于mysql库缺失引起的,所以只要把相应文件补齐就好了
二、解决方案
第一步处理方式(对数据库没有做过备份,尝试移除服务,重新初始化,再重启MySQL):

1. 执行net stop mysql,停止mysql服务 
2. 执行mysqld -remove,移除服务 
3. 执行mysqld -install,安装服务 
4. 执行mysqld --initialize-insecure,初始化 
5. 执行net start mysql,开启mysql服务

第二种解决方案:直接copy导入

a. 从其它相同版本的mysql数据库导出个proc的数据通过命令行导入进去;

b. 或者拷贝下data/mysql/proc.frm, proc.MYD, proc.MYI 三个文件到你的数据库data/mysql/ 目录下,重启数据库;

c. 如果之前有数据库备份,提取出其中的mysql.proc表来导入。 
2. 问题:如果是从其它环境导入或拷贝的,数据库的存储过程会受影响,需重建所有数据库下的存储过程。

补充内容:更新IDE数据库驱动器

3、在DATE SOURCEDRIVERS中options选项中打钩 Introspect using JDBC metadata

4、更新的数据回传到IDE

 5、mysql数据库出现cannot load from mysql.proc

MySQL从5.1升级至5.5后在调用存储过程时报出“Cannot load from mysql.proc. The table is probably corrupted  MySQL升级完成后未对相关数据库执行升级
在命令行中执行mysql_upgrade -uroot -p

 

转载于:https://www.cnblogs.com/xinxianquan/p/8542465.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值