mysql8: 新建账号和权限操作

一,允许从任何ip访问时,用%

CREATE USER 'myusername'@'%' IDENTIFIED BY 'my_password';

GRANT ALL PRIVILEGES ON `mybase`.* TO 'myusername'@'%';

FLUSH PRIVILEGES;

注意:这种做法在生产环境中不要使用,不够安全,
         只用于内部开发时工程师共同访问的内部环境

二,授权的例子:

允许newuser这个用户从任何ip访问任意库下的任意表

ALL PRIVILEGES 表示所有权限

 *.* 表示任意数据库下的任意表

GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'%';

 允许newuser从localhost访问mydb数据库下的任意表

GRANT ALL PRIVILEGES ON `mydb`.* TO 'newuser'@'localhost';

 允许newuser从localhost访问mydb数据库下的order_list表,权限包括:SELECT,INSERT,DELETE,UPDATE

GRANT SELECT,INSERT,DELETE,UPDATE ON mydb.order_list TO newuser@localhost ;

三,查看权限:

1, 查看mysql内置的权限:

show privileges;

如图:

2,查看指定用户的权限:

show grants for 'newuser'@'%';

 

四,取消权限:

1,语法

REVOKE 权限1,权限2,…权限n ON 数据库名称.表名称 FROM 用户名@用户地址;

2,例子:

#收回全库全表的所有权限

REVOKE ALL PRIVILEGES ON *.* FROM newuser@'%';

#收回mysql库下的所有表的插删改查权限

REVOKE SELECT,INSERT,UPDATE,DELETE ON mysql.* FROM newuser@localhost;

 

posted @ 2024-07-26 15:55  刘宏缔的架构森林  阅读(9)  评论(0编辑  收藏  举报