mysql主从关于函数过程同步问题

来源:网络 责任编辑:栏目编辑 发表时间:2013-07-01 16:02 点击:

发现mysql主从同上步 对于函数过程总是出错
 
MySQL创建函数问题分析:
根据系统提示,导致该错误的原因可能是一个安全设置方面的配置,查手册log_bin_trust_function_creators参数缺省0,是不 允许function的同步的。
一般我们在配置repliaction的时候,都忘记关注这个参数,这样在master更新funtion后,slave就会报告错误,然后slave stoped。
MySQL创建函数问题处理过程:
登陆mysql数据库
> set global log_bin_trust_function_creators = 1;
> start slave;
跟踪mysql的启动日志,slave正常运行,问题解决。
持续跟踪,经过一个晚上,bin-relay-log的数据全部同步完毕。 直接在my.cnf里面添加
log_bin_trust_function_creators = 1
 
 
========================================================================
创建function时
出错信息:
ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable)
 
原因:
这是我们开启了bin-log, 我们就必须指定我们的函数是否是
1 DETERMINISTIC 不确定的
2 NO SQL 没有SQl语句,当然也不会修改数据
3 READS SQL DATA 只是读取数据,当然也不会修改数据
4 MODIFIES SQL DATA 要修改数据
5 CONTAINS SQL 包含了SQL语句

其中在function里面,只有 DETERMINISTIC, NO SQL 和 READS SQL DATA 被支持。如果我们开启了 bin-log, 我们就必须为我们的function指定一个参数。
 
解决方法:
SQL code
mysql>show variables like '%func%';
+---------------------------------+-------+
|Variable_name |Value|
+---------------------------------+-------+
|log_bin_trust_function_creators|OFF |
+---------------------------------+-------+
1 row in set (0.00sec)
mysql>set global log_bin_trust_function_creators=1;
Query OK,0 rows affected (0.00sec)
mysql>show variables like '%func%';
+---------------------------------+-------+
|Variable_name |Value|
+---------------------------------+-------+
|log_bin_trust_function_creators|ON |
+---------------------------------+-------+
1 row in set (0.00sec)
mysql>
 
 
试过了,这个方法很有效的。

    相关新闻>>

      发表评论
      请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
      用户名: 验证码:点击我更换图片
      最新评论 更多>>

      推荐热点

      • mysql-mmm
      • mysqldump命令——MySQL数据库备份还原
      • Oracle数据导入MySQL的快捷工具:MySQL Migration Toolkit
      • 简简单单储存过程——循环一个select结果集
      • MySQL数据库十大优化技巧
      • Mysql主主复制架构配置
      • Mysql安装笔记
      • MySQL Stmt预处理提高效率问题的小研究
      • Mysql的Procedure 参数为NULL问题分析
      网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
      Copyright © 2008-2015 计算机技术学习交流网. 版权所有

      豫ICP备11007008号-1