Mysql用户可以从表中选择,但不能从视图中选择

ric*_*ick 11 mysql amazon-ec2

我有一个mysql数据库,我在其上创建用户,并授予他们在特定数据库上的选择,更新,插入和删除.

数据库包含表和视图.由于某些原因,这些创建的用户在尝试从视图中进行选择时会收到以下错误.

Access denied for user 'someuser'@'%' (using password: YES)

SELECT * FROM (`someview`) WHERE `somecolumn` = 0
Run Code Online (Sandbox Code Playgroud)

但是,从同一数据库中的表中进行选择时,我不会收到此错误.

我已将此应用程序部署到多个位置,并且它在其他任何地方都可以使用,包括使用amazon rds.这个特殊的实例是在amazon ec2上运行的mysql服务器.

ric*_*ick 21

解决了它.错误消息具有误导性.

原因是视图的定义者不再存在,而不是从视图中选择的用户.

我重新创建了这个用户,一切都很好.