The user specified as a definer ('root'@'%') does not exist

    昨天程序员在用insert into 往表里插入数据时,报“The user specified as a definer ('root'@'%') does not exist”错,通过一系列排查以后发现,原来以前的触发器定义以下:

Definer: root@%mysql

因为root权限已回收,给程序员新开使用的用户名是smsdev,致使mysql认为如今的用户在触发器上没有定义,以后让程序员update了一下该表的触发器:程序员

Definer: root@%--〉 Definer: smsdev@%sql

更新以后,再往表里插入数据,就恢复正常了。数据库


可能使用到的mysql命令以下:ide

mysql> show procedure status;              //查看数据库中的存储过程;函数

mysql> show function status;  //查看数据库中的函数;orm

mysql> show triggers\G;   //查看数据库中的触发器;ci

mysql> show table status where comment='view';  //查看视图;it

mysql> select * from  information_schema.VIEWS limit 4\G;io

相关文章
相关标签/搜索