阅读内容

关于mysql error number 1051和1418错误的处理

[日期:2008-08-25] 来源:红联Linux  作者:osiwenc


mysql error number 1051 在网上(包括外国网) 说了一大堆,但就是没有人知道其中的缘由,这是store engine 不同造成的

例如,最开始的engine=myisam,在此基础上建了A表,那么你现在要转成innodb的方式(开启了my.cnf下的innodb的参数)现在如果再来 select A 表那么是会报不存在的,如果drop 的话会报 mysql error number 1051.这个问题该怎么处理呢? 哈哈,先关掉my.cnf的innodb参数,然后重启mysql,这样A就可以select 了,把A表的backup 下来,drop 掉A表,然后再开启innodb参数,重起mysql,restore 刚才备份的脚本,这样就可以搞定了.

如果在create function的时候有 1418的错语的时候:那么

set global log_bin_trust_routine_creators=1;

然后怎么create function 都不会有问题(当然,你的function必段正确哦),妈的,这是mysql的一个bug,搞不懂为什么,反正这样做就OK了.

在Oracle中根本就没有这种错语,如果出现了这种错语,是由于用户权限不够,OpenSource的东西就是这样的.还是Oracle的好.




本文评论       全部评论
发表评论
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款


点评: 字数
姓名:

L
I
N
U
X


GOOGLE搜索
Google