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

时间:2023-03-08 17:33:20

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

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服务

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

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

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

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

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

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

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

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

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

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

4、更新的数据回传到IDE

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

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