【问题标题】:mysql access denied while creating new user创建新用户时mysql访问被拒绝
【发布时间】:2013-05-01 20:14:39
【问题描述】:

我想在我的公司创建一个新的 mysql 用户和数据库演示。这是我在 mysql.exe 中输入的命令:

create user 'admin'@'localhost' identified by 'admin';
create database dem;

每次我有这样的回应:

用户 ''@'localhost' 拒绝访问数据库。

实际上我提到了类似的问题:

有人可以帮忙吗???

【问题讨论】:

  • 您在哪个用户(如果有)下运行 mysql?该用户是否有权创建用户和数据库?

标签: mysql command-line


【解决方案1】:

我建议首先创建数据库,然后您可以创建一个用户,并使用 GRANT 选项允许对该用户授予任何您认为必要的权限。但是,在能够“潜在”工作时先创建用户然后创建数据库并不是 MySQL 的最佳实践。因此,您希望有效地执行以下步骤:

  1. 创建数据库
  2. 创建用户
  3. 授予权限
  4. ???
  5. 利润

【讨论】:

  • 感谢您的回复。对于您建议的每个操作,我都会从命令行获得以下响应:“拒绝访问”或“SQL 语法错误”
【解决方案2】:

您必须授予 admin 访问 dem 的权限。

GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%' WITH GRANT OPTION;

您可能还必须为 admin@localhost 授予相同的权限。 IIRC,如果您曾经使用管理员远程登录,您将继承基本权限,除非另有授予

你可以找到很多答案HERE

【讨论】:

  • 谢谢您的回答。我输入了这个错误的授权命令:“你的 SQL 语法有错误”
  • 这是在线 MySQL 参考中的内容。看看我的编辑,现在应该执行。这将起作用,但在安全性方面打开了一点。在这里超越您的问题,然后您可以修改如何创建和授权用户。我添加了指向我的答案的链接。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-07-19
  • 2019-01-24
  • 1970-01-01
  • 2018-08-31
  • 2011-12-09
  • 2016-08-08
相关资源
最近更新 更多