mysql 远程授权grant_MySQL 8.0 使用GRANT授权修改 实现远程链接

GRANT概述

该GRANT语句使系统管理员可以授予权限和角色,这些权限和角色可以授予用户帐户和角色。这些语法限制适用:

GRANT不能混合在同一语句中授予权限和角色。给定 GRANT语句必须授予特权或角色。

要使用GRANT,您必须拥有该 GRANT OPTION权限,并且您必须具有您授予的权限。当 read_only启用了系统变量,GRANT另外需要CONNECTION_ADMIN 或SUPER特权。

GRANT要么为所有命名用户和角色成功,要么回滚,如果发生任何错误,则无效。只有当所有命名用户和角色成功时,该语句才会写入二进制日志。

以下是几个DEMO

GRANT ALL ON db1.* TO 'jeffrey'@'localhost';

GRANT 'role1', 'role2' TO 'user1'@'localhost', 'user2'@'localhost';

GRANT 'role1', 'role2' TO 'user1'@'%', 'user2'@'localhost';//采用@'%'可实现远程链接

GRANT SELECT ON world.* TO 'role3';

复制代码

帐户或角色名称的主机名部分(如果省略)默认为'%',而采用@'%'可实现远程链接。

通常,数据库管理员首先使用 CREATE USER创建帐户并定义其非特权特征(如密码),是否使用安全连接以及对服务器资源的访问限制,然后使用它 GRANT来定义其权限。 ALTER USER可用于更改现有帐户的非特权。例如:

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

GRANT ALL ON db1.* TO 'jeffrey'@'localhost';

GRANT SELECT ON db2.invoice TO 'jeffrey'@'localhost';

ALTER USER 'jeffrey'@'localhost' WITH MAX_QUERIES_PER_HOUR 90;

复制代码

如果要确定操作产生的特权,请使用SHOW GRANTS 例子如下:

mysql> SHOW GRANTS FOR 'jeffrey'@'localhost';

+------------------------------------------------------------------+

| Grants for jeffrey@localhost |

+------------------------------------------------------------------+

| GRANT USAGE ON *.* TO `jeffrey`@`localhost` |

| GRANT SELECT, INSERT, UPDATE ON `db1`.* TO `jeffrey`@`localhost` |

+------------------------------------------------------------------+

复制代码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值