数据库
首页 > 数据库> > MySQL8.0创建远程登入账号和设置权限和回收权限

MySQL8.0创建远程登入账号和设置权限和回收权限

作者:互联网

GRANT 权限列表 ON 数据库.表 TO 用户账号 @ 用户ip  IDENTIFIED BY 用户密码  授权命令;

权限列表:允许用户执行的操作权限。
  包含select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file 逗号隔开

数据库.表: 开放的数据库或数据库下属的表
  如*.* 为开放所有表 mysql.* 为mysql数据库下属所有的表 mysql.user 只开放mysql的user表

用户账号: 即远程访问登录的用户名。

用户ip: 允许远程用户通过什么ip来访问。
  如 '%' 代表所有ip都能访问 'localhost' 本机能访问 '192.168.0.1' ip为192。168.0.1的请求可以访问。

用户密码: 即远程用户的访问密码。

授权命令:
WITH GRANT OPTION
被授权用户可将所获得的权限再次授予其它用户或角色,并且权限的取消是级联的。
授权级联一并回收,管理员不可以显式回收其创建用户的权限.
WITH ADMIN OPTION
被授权用户可将所获得的权限再次授予其它用户或角色,并且权限的取消是不级联的。
授权独立,管理员可以显式回收其创建用户的权限.

创建远程登入账号

create user '用户名'@'来源地' identified by '密码';

-- 来源地:可以为'localhost'或'127.0.0.1'表示只能在本机登入'; '%'表示可以在任何地方登入;'192.*.*.*'表示某一个网段可以登入

授予用户权限

grant all privileges on *.* to '用户名'@'来源地';

flush privileges; 

with grant option  -- 表示允许这个用户给其他用户授权
grant all privileges on  *.*  to '用户名'@'来源地' with grant option;
flush privileges; 
  
-- all privileges 是授予所有权限
-- *.* 表示所有库所有表,亦可以指定库或表授予权限(demo.student 表示给demo库的student表授予权限)
 -- flush privileges 表示刷新权限

收回授予的权限

1 revoke all privileges on *.* from '用户名'@'来源地'
2 
3 -- 表示从用户中收回所有授予的权限
4 -- 亦可以指定某部分权限 如 update、insert、delete权限等

 远程登入

1 mysql -u用户名 -p密码  -P端口号  -h ip地址

 

 

 

 

标签:用户名,--,ip,privileges,入账,用户,MySQL8.0,权限
来源: https://www.cnblogs.com/Liu928011/p/14746346.html