MYSQL导入存储过程无法执行问题解决办法

通过mysql导入的数据库,当里面有存储过程的时候,导入后存储过程是无法用程序使用了,找了很久原因,最后发现是权限问题。

1、我们要用查看数据库里面的存储过程:在mysql里面输入

mysql> show function status;

运行后的结果如图所示:

2、修改对应存储过程的Definer和Security_type这两个字段的值
加入我们程序链接数据库的帐户是leiming,链接数据库的地址是127.0.0.1
我们需要输入

mysql> update mysql.proc set Definer='leiming@127.0.0.1';

然后修改Security_type字段:

mysql> update mysql.proc set Security_type='INVOKER';

这里这里我们是修改的所有的存储过程,当然你要修改你对应的那个存储过程,只需要加上where条件即可。

ps MYSQL导入存储过程报错

今天向mysql导入存储过程的时候报错,错误如下:

you *might* want to use the less safe log_bin_trust_function_creators variable
 
处理这个问题,只需要进入mysql,然后输入:

mysql> SET GLOBAL log_bin_trust_function_creators = 1;
 
退出,重新导入存储过程,成功!

时间: 2024-09-18 00:01:23

MYSQL导入存储过程无法执行问题解决办法的相关文章

mysql导入存储过程报错问题解决方法

今天向mysql导入存储过程的时候报错,错误如下: you *might* want to use the less safe log_bin_trust_function_creators variable   处理这个问题,只需要进入mysql,然后输入: 解决办法 在my.ini  里搜索[mysqld] 直接在下边加一句话:  代码如下 复制代码 log-bin-trust-function-creators=1 或直接使用  代码如下 复制代码 mysql> SET GLOBAL lo

mysql导入存储过程的方法

mysql教程导入存储过程的方法 本文章提供二种关于mysql导入存储过程的方法与mysql存储过程导出方法,下面我们先来看看导出存储过程的实例,再看一款详细的导入存储过程方法. 导出mysql里面的函数或者存储过程 语法为: [root@localhost bin]# mysqldump -uroot -p -hlocalhost -p3306 -n -d -t -r dbname > procedure_name.sql 参数说明: -n:   --no-create-db -d:   --

mysql导入存储过程无法使用

存储过程的创建者拥有存储过程的ALTER.CREATE.EXECUTE权限. 通过mysql导入的数据库,当里面有存储过程的时候,导入后存储过程是无法用程序使用了,找了很久原因,最后发现是权限问题. 1.我们要用查看数据库里面的存储过程:在mysql里面输入  代码如下 复制代码 mysql> show function status; 运行后的结果如图所示: 2.修改对应存储过程的Definer和Security_type这两个字段的值 加入我们程序链接数据库的帐户是leiming,链接数据库

MySQL server has gone away问题解决办法

执行一个SQL,但SQL语句过大或者语句中含有BLOB或者longblob字段.比如,图片数据的处理.都容易引起MySQL server has gone away. 今天遇到类似的情景,MySQL只是冷冷的说:MySQL server has gone away. 后来百度查找发现是mysql设置的问题 原因1. MySQL 服务宕了 判断是否属于这个原因的方法很简单,执行以下命令,查看mysql的运行时长 $ mysql -uroot -p -e "show global status li

mysql数据库 slave复制异常问题解决办法

以下是两种slave复制异常的情况.导致的原因都是由于跨机房同步,slave的机房突然掉电导致的.    案例一.    这个错误大原因是Read_Master_Log_Pos: 1028687822的pos号在主库上是没有的.    处理方法:获取这个pos号的前一个pos号,从新开启同步,这里注意如果是row模式的话就没有问题.如果是mix的或者statement的话,就需要去分析binlog,确认具体执行到哪个pos号了,不然可能会导致数据不一致.    (andy:db:)[(none)

MySQL利用localhost无法连接问题解决办法(127.0.0.1能连接)

  安装后使用探针进行PHPINFO测试的时候.发现默认的localhost不能连接MariaDB数据库,但是通过127.0.0.1又可以连接.表示很郁闷.最初想到的是:是不是linux服务器上的hosts文件问题. 于是就 echo "127.0.0.1 localhost">>/etc/hosts && sync 结果还是一样,localhost无法连接127.0.0.1可以连接. 在网上看到有朋友说是selinux的问题,但,一般系统安装好了后我都是已

mysql [Warning] max_join_size报错问题解决办法

100716 06:32:45  mysqld started 100716  6:32:45 [Warning] option 'max_join_size': unsigned value 18446744073709551615 adjusted to 4294967295 100716  6:32:45 [Warning] option 'max_join_size': unsigned value 18446744073709551615 adjusted to 4294967295

Linux开启mysql远程连接方法与问题解决办法

Linux开启mysql远程连接方法 1.GRANT命令创建远程连接mysql授权用户root mysql -u root -p mysql>GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY '123456' WITH GRANT OPTION; 增加root用户授权通过本地机(localhost)访问,密码 "123456". mysql>GRANT ALL PRIVILEGES ON *.* TO r

PP助手导入铃声/音乐失败问题解决办法

无法使用PP助手导入音乐的解决方法: 一.我们在电脑中安装itunes工具,然后把iphone设备连接电脑等待iTunes识别了:   二.接着在电脑中再打开PP助手--文件--文件系统(用户)--将[iTunes_Control]--删除. (温馨提示:删除这个文件会将IOS设备内的音乐与手机铃声全部清空)   三.重启IOS设备--在iTunes将IOS设备设置为全新I OS设备--取消两个打勾自动同步项目--完成.     好了这样就设置好了,注意了这样同步不会影响到以前内容了,只是前面的