在mysql数据库中创建了自定义函数后,发布到生产,程序执行时提示数据库报错:
The user specified as a definer ('root'@'%') does not exist
这种情况一般是创建函数的用户和执行的用户不一致,导致权限问题引发该错误,解决方案二选一:
1:重新用正确的用户建立函数;
2:给root用户授权所有对象的权限:
grant all privileges on *.* to root@”%” identified by “your_root_password”;
flush privileges;
【
如果你的mysql执行上面语句时报语法错误,尝试将双引号换成单引号:
grant all privileges on *.* to root@'%' identified by 'your_root_password';
flush privileges;
】