windows 新建mysql权限设置_MySQL 管理用户

MySQL用户账号和信息存储在名为mysql的MySQL数据库中。一般不需要直接访问mysql数据库和表,但有时需要直接访问。需要直接访问它的时机之一是在需要获得所有用户账号列表时。为此,可使用以下代码:use mysql;

select user from user;

创建用户账户CREATE USER ben IDENTIFIED BY 'p@$$w0rd';

指定散列口令 IDENTIFIED BY指定的口令为纯文本,MySQL 将在保存到user表之前对其进行加密。为了作为散列值指定口令,使用IDENTIFIED BY PASSWORD。

重新命名一个用户账号RENAME USER ben TO xiaomei;

删除用户账号DROP USER xiaomei;

更改用户密码SET PASSWORD FOR xiaomei = Password('xinmima');

GRANT语句

GRANT要求你至少给出以下信息:

 要授予的权限;

 被授予访问权限的数据库或表;

 用户名。GRANT SELECT ON dbname.* TO xiaomei;

此GRANT允许用户在dbname.*(dbname数据库的所有表)上使用SELECT。通过只授予SELECT访问权限,用户xiaomei对dbname数据库中的所有数据具有只读访问权限。

查看用户账号权限SHOW GRANTS FOR xiaomei;

REVOKE语句

GRANT的反操作为REVOKE,用它来撤销特定的权限。下面举一个例子:REVOKE SELECT ON dbname.* TO xiaomei;

这条REVOKE语句取消刚赋予用户xiaomei的SELECT访问权限。被撤销的访问权限必须存在,否则会出错。

GRANT和REVOKE可在几个层次上控制访问权限:

 整个服务器,使用GRANT ALL和REVOKE ALL;

 整个数据库,使用ON database.*;

 特定的表,使用ON database.table;

 特定的列;

 特定的存储过程。

9da24ad9dbd0c7fe97dd7e6d261d5e03.png

未来的授权

在使用GRANT和REVOKE时,用户账号必须存在,但对所涉及的对象没有这个要求。这允许管理员在创建数据库和表之前设计和实现安全措施。

这样做的副作用是,当某个数据库或表被删除时(用DROP语句),相关的访问权限仍然存在。而且,如果将来重新创建该数据库或表,这些权限仍然起作用。

简化多次授权

可通过列出各权限并用逗号分隔,将多条GRANT语句串在一起,如下所示:GRANT SELECT,INSERT ON dbname.* TO xiaomei;

参考:《MySQL必知必会》

修改时间 2021-01-14

真诚赞赏,手留余香

赞赏

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值