mysql执行存储过程权限

存储过程执行报错

 ERROR 1227 (42000): Access denied; you need (at least one of) the SUPER privilege(s) for this operation
DELIMITER $$
USE `jta2db`$$
DROP PROCEDURE IF EXISTS `tblFinTotal_Procedure`$$
CREATE DEFINER=`jta2`@`%` PROCEDURE `tblFinTotal_Procedure`(IN table_name VARCHAR(20),IN input_time VARCHAR(20))
BEGIN
……………………

新手求解

 CREATE DEFINER=`jta2`@`%` PROCEDURE `tblFinTotal_Procedure`(IN table_name VARCHA ..........................

修改为:

 CREATE PROCEDURE `tblFinTotal_Procedure`(IN table_name VARCHA ..........................

当存储过程的创建和使用是同一用户时,不需要加入DEFINER属性。
去掉此属性,应该就不会报错了。

用心回答每个问题,如果对您有帮助,请采纳答案好吗,谢谢。

权限不足,你视图删除存储过程,用root账户试试看

对了,在SQLyog上用jta2用户可以执行。但是在linux上用jta2账户登录执行source /var/lib/mysql/20170527/tblFinTotal_procedure_ddl.sql就会报权限不足