-1

我通过插入 mySql 数据库中的用户表创建了一个新用户 - 但它显示了一个错误,说没有标题为“密码”的列。哪一列负责mySql数据库中用户表中的密码?

mysql> INSERT INTO user 
          (host, user, password, 
           select_priv, insert_priv, update_priv) 
           VALUES ('localhost', 'guest', 
           PASSWORD('guest123'), 'Y', 'Y', 'Y');
4

1 回答 1

5

这是在 MySQL 中创建新用户的方法

CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';

这是您授予用户权限的方式:

似乎用户“解析器”的权限不正确。您可以使用语句检查用户的配置。

SELECT * FROM  information_schema.USER_PRIVILEGES; 

如果您已授予用户新权限,则必须重新加载设置。你可以这样做FLUSH PRIVILEGES;

如何授予不同的用户权限:

  • ALL PRIVILEGES - 正如我们之前看到的,这将允许 MySQL 用户访问指定的数据库(或者如果没有选择数据库,则在整个系统中)
  • CREATE - 允许他们创建新的表或数据库
  • DROP-允许他们删除表或数据库
  • DELETE-允许他们从表中删除行 INSERT-允许他们将行插入到表中
  • SELECT - 允许他们使用 Select 命令来读取数据库
  • UPDATE - 允许他们更新表行
  • GRANT OPTION - 允许他们授予或删除其他用户的权限

要为特定用户提供权限,您可以使用此框架:

GRANT [type of permission] ON [database name].[table name] TO ‘[username]’@'localhost’;

我希望这能帮助你解决你的问题。千万不要忘记冲洗!!!

于 2017-08-18T13:31:37.363 回答