场景描述: 原mysql5.0.22-log升级到mysql5.1.26-rc,后因一些特殊原因,通过重建方式恢复到mysql5.0.22-log,但核心数据库mysql并没有从mysql5.1.26到mysql5.0.22-log. 导致存储过程与函数无法导入. 1.导存储过程时,会有如下错误提示: ERROR 1307 (HY000): FAILED TO CREATE PROCEDURE 比对系统表的 proc表,发现了问题 2个表的结构差了几个字段。不能用的表结构,多出来了5个字段,分别为 `character_set_client` char(32) character set utf8 collate utf8_bin default NULL, `collation_connection` char(32) character set utf8 collate utf8_bin default NULL, `db_collation` char(32) character set utf8 collate utf8_bin default NULL, `body_utf8` longblob, 2.导函数时,会有如下错误提示: ErrorCode:1418 ThisfunctionhasnoneofDETERMINISTIC,NOSQL,orREADSSQLDATAinitsdeclarationandbinaryloggingisenabled(you*might*wanttousethelesssafelog_bin_trust_function_creatorsvariable) (0mstaken) 问题处理方法 对于,异常1的处理:重新导入mysql5.0.22-log的mysql数据到异常数据库.即重新原mysql数据库. 对于,异常2的处理:在my.ini(linux下为my.conf)文件中 [mysqld] 标记后加一行内容为 log-bin-trust-function-creators=1
mysql5.0.22-log的内核数据库mysql误用mysql5.1.26-rc,引起存储过程与函数无法导入
最新推荐文章于 2024-09-04 20:48:11 发布