将远程数据库导入到本地之后,一启动项目就报错“execute command denied to user”,提示用户没权限执行自定义FunctionCaused by: java.sql.SQLSyntaxErrorException: execute command denied to user 'cxcs'@'localhost' for routine 'hzcx.getOrgName'

at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120)

at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97)

at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)

at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:975)

at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:392)

at org.apache.commons.dbcp.DelegatingPreparedStatement.execute(DelegatingPreparedStatement.java:172)

at org.apache.commons.dbcp.DelegatingPreparedStatement.execute(DelegatingPreparedStatement.java:172)

at sun.reflect.GeneratedMethodAccessor50.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:55)

at com.sun.proxy.$Proxy25.execute(Unknown Source)

at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:56)

at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:70)

at sun.reflect.GeneratedMethodAccessor49.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:59)

at com.sun.proxy.$Proxy23.query(Unknown Source)

at org.apache.ibatis.executor.ReuseExecutor.doQuery(ReuseExecutor.java:54)

at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:259)

at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:132)

at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:105)

at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:81)

at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:104)

at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:98)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:354)

... 19 more

检查导入sql,发现这个function是在root用户下面的,所以将已定义的function全部删除重建,全部在cxcs这个用户下面,结果发现还是不行,错误依旧。

后来查阅资料时,看到有博主碰到过用户没有给execute权限的情况:http://blog.csdn.net/lwei_998/article/details/44177741

想起来好像自己也没有给用户赋予执行权限,使用show命令查看一下show grants for 'cxcs'@'localhost'

果然是这个原因,用户cxcs只有“select,insert,update,delete,create,drop,alter”这几个权限,赶紧grant一个execute给用户cxcsgrant execute on hzcx.* to 'cxcs'@'localhost'

问题解决!

mysql 创建函数 权限_MySQL赋予用户执行自定义Function的权限相关推荐

  1. mysql 赋权限_MySQL赋予用户权限命令总结

    MySQL用户可用权限 一个新建的MySQL用户没有任何访问权限,这就意味着你不能在MySQL数据库中进行任何操作.你得赋予用户必要的权限.以下是一些可用的权限: ALL: 所有可用的权限 CREAT ...

  2. mysql创建函数失败_MYSQL创建函数出错如何解决

    在使用MySQL数据库时,有时会遇到MySQL函数不能创建的情况.下面就教您一个解决MySQL函数不能创建问题的方法,供您借鉴参考.希望能帮助到大家. 案例一: 目前在项目中,执行创建mysql的函数 ...

  3. mysql给用户建表权限_MYSQL添加用户、建表、权限

    1.新建用户 //登录MYSQL @>mysql -u root -p @>密码 //创建用户 mysql> insert into mysql.user(Host,User,Pas ...

  4. mysql创建函数失败_mysql创建函数出现问题?

    大家好,帮我看看下面的mysql的函数有什么问题?一直创建不了. DELIMITER $$ DROP FUNCTION IF EXISTS check_if_exists$$ CREATE FUNCT ...

  5. mysql创建管理密码_mysql 创建用户与授权、修改密码

    一, 创建用户: CREATE USER用于创建新的MySQL账户.要使用CREATE USER,您必须拥有mysql数据库的全局CREATE USER权限,或拥有INSERT权限.对于每个账户,CR ...

  6. MySQL 创建函数, MySQL定义函数实现汉字转拼音 MySQL汉字转拼音MySQL汉字生成拼音字符串

    MySQL 创建函数, MySQL定义函数实现汉字转拼音 MySQL汉字转拼音 一.MySQL创建函数 1.语法 CREATE FUNCTION fun_name([paramName type , ...

  7. MySQL创建函数报“ERROR 1418 ”错误,不能创建函数

    MySQL创建函数报ERROR 1418错误,不能创建函数,根据官方提示是说,不能创建函数可能是一个安全设置方面的配置或功能未开启原因,下面我们一起来看. 错误 ERROR 1418 (HY000): ...

  8. MySQL创建函数和存储过程,批量插入大数据

    工作中使用Jmeter压测时,需要大数据量,可以使用MySQL创建函数和存储过程,批量插入大数据 右击新建函数,创建过程 完成后自动创建 在body部分写入过程: DECLARE id INT DEF ...

  9. 在navicat for mysql 创建函数,保存的时候出现1064错误

    在navicat for mysql 创建函数,保存的时候出现1064错误 解决方法:很有可能是mysql语句出现语法错误,仔细检查一下符号是否为英文,是否忘记写符号":"

最新文章

  1. C语言实现,设计一个将所有奇数移动到偶数之前的算法
  2. Echarts 自定义数据视图
  3. html5 版街头霸王,街头霸王5全DLC整合版
  4. asp mysql text_11种ASP连接数据库的方法
  5. Android 应用开发(30)---Git之使用GitHub搭建远程仓库
  6. 安装mysql最后一步第二个打叉_Mysql安装到最后一步时。出现start service红叉   亲朋好友帮忙指导一下!谢谢! 百...
  7. java删除文件的上一级_java中多级目录的删除
  8. controller层要写什么_别再写满屏的try-catch了,真丑,全局异常处理不会吗?
  9. 快解析:NAT移动版结合管家婆使用操作
  10. Tabular Editor学习笔记_2
  11. Inno Setup 6.0.3+ 简体中文语言包
  12. Grafana 短信报警
  13. 人工智能 漆桂林_2020年CCF专委活动计划(预通过)
  14. 【死磕 Spring】----- IOC 之 Factory 实例化 bean
  15. 滑动时固定在头部的一部分会变色(向下滑会变红)
  16. 盗版不需要考虑,直接企业版(Enterprise)走起?
  17. 路由器桥接静态ip设置_如何在路由器上设置静态IP地址
  18. xmanager无法连接Linux服务器,解决xmanager连接linux出错问题
  19. 如何提高测试人员问题分析能力
  20. [hdu6578]Blank

热门文章

  1. ensp路由器起不来解决方法
  2. JavaScript二维数组与函数
  3. 利用正则表达式匹配标点问题
  4. 枯燥?乏味?不接地气?学习方法很重要
  5. C语言的运算符优先级表格
  6. three.js glb 多个_奔驰车友会|从7座奔驰的角度来看,29.28万起的奔驰GLB,性价比很高...
  7. 网上比较好的两种作息时间表
  8. ant design vue:a-select使用v-model后无法选择的解决方法
  9. 震撼你的思维:老外是怎么跟我们做生意的(上)
  10. RC4加密算法的原理及实现