1.新用户创建以及授权
1.创建用户(未分配角色)
-- 使用明文密码创建用户,允许其从 '172.25.20.1' 登陆。如果172.25.20.1被%替换就是所有ip都可以访问 CREATE USER bigdata@'172.25.20.1' IDENTIFIED WITH mysql_native_password BY 'Zhengda@1';
不能创建数据库和表
2.创建用户(分配角色)
CREATE USER 'dmp_admin'@'%' DEFAULT ROLE 'role_reader_buffer';
3.修改用户密码
-- 修改当前用户的密码。 SET PASSWORD = PASSWORD('123456')
-- 修改指定用户密码。 SET PASSWORD FOR 'bigdata'@'192.%' = PASSWORD('123456')
2.用户角色管理权限
通过以下命令授予指定用户或角色指定的权限。
- 拥有ADMIN 权限,或者GLOBAL 层级GRANT权限的用户,可以授予任意用户的权限。
- 拥有DATABASE 层级 GRANT 权限的用户,可以授予任意用户对指定数据库的权限。
- 拥有TABLE层级GRANT权限的用户,可以授予任意用户对指定数据库中指定表的权限。
- ADMIN_PRIV 权限只能在 GLOBAL 层级授予或撤销。
- 拥有 GLOBAL 层级 GRANT_PRIV 实际等同于拥有 ADMIN_PRIV,因为该层级的 GRANT_PRIV 有授予任意权限的权限,请谨慎授予该权限。
1.授予所有库和表的权限给用户
GRANT SELECT_PRIV ON *.* TO 'bigdata'@'%';
该用户可以查询所有的库,不能创建表和数据库,不能对数据进行增删
2.授予某个库的权限给某个用户
GRANT SELECT_PRIV,ALTER_PRIV,LOAD_PRIV,CREATE_PRIV ON ads TO 'bigdata'@'%';
3.授权指定库中某些表权限给用户
GRANT SELECT_PRIV,ALTER_PRIV,LOAD_PRIV ON ads .ods_lotusbi_rms_god_vat_item_h TO 'bigdata'@'%';
4.撤销授权用户的权限
REVOKE Select_priv,Load_priv,Alter_priv,Create_priv ON db1.ads from bigdata;
撤销前
撤销后
1.角色管理--- 创建角色
REATE ROLE role_reader_buffer;
2.角色管理--- 查看角色
show roles
3.角色管理--- 查看所有用户权限
SHOW ALL GRANTS;
4.角色管理---查看指定用户的权限
SHOW GRANTS FOR root;
5.角色管理---查看用户属性
2.授予权限
通过以下命令授予指定用户或角色指定的权限。
注意
- 拥有 ADMIN 权限,或者 GLOBAL 层级 GRANT 权限的用户,可以授予任意用户的权限。
- 拥有 DATABASE 层级 GRANT 权限的用户,可以授予任意用户对指定数据库的权限。
- 拥有 TABLE 层级 GRANT 权限的用户,可以授予任意用户对指定数据库中指定表的权限。
- ADMIN_PRIV 权限只能在 GLOBAL 层级授予或撤销。
- 拥有 GLOBAL 层级 GRANT_PRIV 实际等同于拥有 ADMIN_PRIV,因为该层级的 GRANT_PRIV 有授予任意权限的权限,请谨慎授予该权限。
数据库级别操作:数据恢复与删除
删除库:drop database test;
恢复库:recover database test
表级别操作:数据恢复与删除