【问题标题】:How to give a mysql user permission to create and delete database on ubuntu如何授予mysql用户在ubuntu上创建和删除数据库的权限
【发布时间】:2020-09-13 06:05:18
【问题描述】:

我最近从共享主机迁移到 aws,因为我使用的是 php 应用程序,所以我选择使用 mysql 作为 db。

但是,我在 1 个 ec2 实例上托管 3 个 Web 应用程序,我必须创建 3 个 DB 和 3 个用户,为他们各自的 DB 提供适当的填充权限。

但是现在的问题是当他们登录到 phpmyadmin 时,他们无法创建一个数据库,上面写着#1044 - Access denied for user 'user'@'localhost' to database 'user_test'

我应该如何克服这个问题?

【问题讨论】:

  • 我应该参考哪个部分,如果您能帮助我提供代码,那就太好了!
  • 您能否澄清您所说的“为他们各自的数据库提供适当的填充权限”的意思-您为此使用了哪些确切的步骤或命令?请注意,您似乎试图以“用户”身份登录,但数据库是“用户测试”,根据您的描述,您需要数据库名称“用户”。更多细节会有所帮助。

标签: mysql ubuntu phpmyadmin


【解决方案1】:

首先,登录:

sudo mysql -u root

然后写:

GRANT ALL PRIVILEGES ON *.* TO 'user'@'localhost';

【讨论】:

  • 但是用户应该只能查看他创建/授予的数据库而不是其他数据库,这可行吗?
  • 任何用户都应该有权访问所有权限以访问其他用户数据库,例如根用户数据库,并且该用户不需要访问所有权限即可使用其数据库。对不起我的英语不好。
  • 不只是查看,此命令授予选定用户读/写访问权限。
  • 查看权限也不应该在那里
  • 因此您不想授予所选用户的任何权限。
猜你喜欢
  • 2021-02-25
  • 1970-01-01
  • 2016-11-04
  • 1970-01-01
  • 1970-01-01
  • 2021-02-05
  • 2015-02-16
  • 2011-11-20
  • 1970-01-01
相关资源
最近更新 更多