This function has none of deterministic(如何在开启了log-bin的MySQL Server中创建FUNCTION)

2024-04-01 09:40:02 :23

this function has none of deterministic(如何在开启了log-bin的MySQL Server中创建FUNCTION)

其实this function has none of deterministic的问题并不复杂,但是又很多的朋友都不太了解如何在开启了log-bin的MySQL Server中创建FUNCTION,因此呢,今天小编就来为大家分享this function has none of deterministic的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!

本文目录

如何在开启了log-bin的MySQL Server中创建FUNCTION

  在MySQL主从复制机器的master的数据库中创建function,报出如下错误:  Error Code: 1418. 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)  原来是因为在主从复制的两台MySQL服务器中开启了二进制日志选项log-bin,slave会从master复制数据,而一些操作,比如function所得的结果在master和slave上可能不同,所以存在潜在的安全隐患。因此,在默认情况下回阻止function的创建。  有两种办法来解决这一问题1.将log_bin_trust_function_creators参数设置为ON,这样一来开启了log-bin的MySQL Server便可以随意创建function。这里存在潜在的数据安全问题,除非明确的知道创建的function在master和slave上的行为完全一致。  设置该参数可以用动态的方式或者指定该参数来启动数据库服务器或者修改配置文件后重启服务器。需注意的是,动态设置的方式会在服务器重启后失效。mysql》 show variables like ’log_bin_trust_function_creators’; mysql》 set global log_bin_trust_function_creators=1;  另外如果是在master上创建函数,想通过主从复制的方式将函数复制到slave上则也需在开启了log-bin的slave中设置上述变量的值为ON(变量的设置不会从master复制到slave上,这点需要注意),否则主从复制会报错。2.明确指明函数的类型1 DETERMINISTIC 不确定的2 NO SQL 没有SQl语句,当然也不会修改数据3 READS SQL DATA 只是读取数据,当然也不会修改数据  比如:CREATE DEFINER=`username`@`%` READS SQL DATA FUNCTION `fn_getitemclock`(i_itemid bigint,i_clock int,i_pos int) RETURNS int(11)...这样一来相当于明确的告知MySQL服务器这个函数不会修改数据,因此可以在开启了log-bin的服务器上安全的创建并被复制到开启了log-bin的slave上。

This application has requested the Runtime to terminate it in an unusual way.

这个应用程序请求运算时间用一个异常的方式终止,请与应用程序的支持小组联系已获得更多的信息。解决方法:1.确定你用的是什么操作系统2.UG不能运行的两种原因:一是许可证服务器是否正确;二是:XPsp2与UG3、UG4都不兼容,IE版本为7.0以上时UGNX出现RuntimeError!这时把UG目录下的UGII文件夹下的psapi.dll文件重命名或删除即可3.解决许可证服务器的正确方法是:安装UG时会有提示需将CRACK中的那个.lic的文件拷贝到指定目录。需要注意的是,用记事本打开.lic的文件后,注意查找一行:servernameany27000中name或许不是这个英文,但是请你用你的计算机名(右键电脑----属性----计算机名)替换其中的name,例如我的计算机名为boy则这行英文为:serverboyany27000;注意是直接替换,千万不可添加任何多余的当当,就连空格的格式都不要进行更改。

在mysql 中创建任意函数,总是出现这个错误是什么原因啊

解决方法如下:1. mysql》 set global log_bin_trust_function_creators = 1;2. 系统启动时 --log-bin-trust-function-creators=13. 在my.ini(linux下为my.conf)文件中 标记后加一行内容为 log-bin-trust-function-creators=1

code blocks 为什么无法运行,还总显示it seems that this project has not been build yet.

要在settings - compiler and debugger settings -global compiler settings - toolchain executable 里设置你的编译器的正确目录..一般把gcc设成根目录下的\MinGW就行了..

this application has requested the runtime to terminate it in an unusual way

我今天在连接access数据库的时候也遇到了这个问题,解决办法是 组建-全部重建。之前也出过类似的情况 我把在win7下的程序 复制到xp系统下运行会提示错误,解决办法也是这个~2014-7-15

Win7系统在运行一个EXE程序时提示Runtime error,this application has requested the runtime

解决办法:1、开始--运行--输入cmd2、输入 cd %windir%\system32 (进入windows安装目录的system32文件夹)3、输入 Regsvr32 Msxml3.dll4、上述故障全部解决原因分析:访问了恶意网站或中木马所致,这些木马伪装成系统驱动程序随机启动,常驻内存。在设备管理器的非即插即用驱动程序中(在查看中选择“显示隐藏的设备”)可以找到木马程序伪装的设备。木马程序解除了某些dll文件的注册,导致设备管理器不能正常打开,也就无法卸载木马驱动。同时与这些dLL文件相关联的软件都无法正常使用。杀毒软件一般都能查杀这些木马,但是不能修复取消注册的dll文件,导致很多软件不能正常使用,重装也不行,这就是所谓的中毒后遗症。估计大部分人都会选择重装系统,费时又费力。其实只要手工重新注册dll文件即可。建议杀毒及安全软件的开发者们在这方面多下功夫,尽早解决这个问题。

- Syntax error on token “,“, < expected - This method has a constructor name

1. 参数列表需要有参数类型和参数名字,他们中间要用空格分开,你现在写的都是String_name 这样子,其中String是类型,name是参数名字,当中的下划线是多余的2. 你没有贴完整的代码,但是从报的错误来看,StuXinXi1 这个方法和该方法所在的类同名,同名的方法会被认为是构造函数,但是构造函数不能有返回类型。所以,你有两个选择,如果你想写构造函数,那么把返回类型void去掉; 反之则把这个方法的名字改成别的

OK,关于this function has none of deterministic和如何在开启了log-bin的MySQL Server中创建FUNCTION的内容到此结束了,希望对大家有所帮助。

this function has none of deterministic(如何在开启了log-bin的MySQL Server中创建FUNCTION)

本文编辑:admin
Copyright © 2022 All Rights Reserved 威海上格软件有限公司 版权所有

鲁ICP备20007704号

Thanks for visiting my site.