您可以根据需要修改普通账号的权限。高权限账号的权限只能重置为初始状态,无法修改为指定的权限。
说明
如果需要自定义各种权限类型组合或授予某些表级别权限等场景,您可以通过数据管理DMS推出的数据库账号权限管理功能进行灵活管控。详情请参见MySQL数据库账号权限管理。
方法一:在控制台修改普通账号的权限
方法二:通过DMS修改普通账号的权限
请参见MySQL数据库账号权限管理。
方法三:通过SQL语句修改普通账号的权限
前提条件
进行授权操作的账号为高权限账号。
执行GRANT授权命令对目标账号进行授权。
说明更多关于GRANT命令的说明,请参见MySQL官方说明文档。
可授予的权限列表,请参见账号权限列表。
常见问题
Q:为什么我用普通账号无法创建数据库?提示ERROR 1044 (42000): Access denied for user 'xxxx'@'%' to database 'xxxx'
。
A:
普通账号默认仅拥有登录数据库的权限,您需要先使用高权限账号对普通账号授予CREATE权限。授权语句示例:
GRANT CREATE ON *.* TO '<普通账号名>'@'%';
Q:如何不让用户访问数据库?
A:可以把白名单中的IP删除,只保留127.0.0.1。清理完成后,重启实例,这样用户就无法访问了。
Q:是否可以锁定账号?
A:高权限账号可以为自己或普通账号执行ALTER USER '用户名' ACCOUNT LOCK;
,修改后重启实例,断开现有连接。高权限账号恢复权限可以重置高权限账号。
说明
MySQL 5.6版本的RDS实例不支持ALTER USER '用户名' ACCOUNT LOCK;
命令。