数据库··By/蜜汁炒酸奶

网易MySQL微专业学习笔记(三)-Mysql权限管理

前言

这个系列属于个人学习网易云课堂MySQL数据库工程师微专业的相关课程过程中的笔记,本篇为其“MySQL数据库对象与应用”中的MySQL数据类型相关笔记。 所有笔记可能不定期更新,发布时不一定为最终版。 netease_mysql_feng.png

正文

连接数据库的必要条件

网络畅通

用户名密码正确

数据库需添加ip白名单

更细粒度的验证(库表列权限类型等)

权限粒度

Data Privileges

数据层次的权限

data:select,insert,update,delete

Definition Privileges

应用于逻辑对象

DataBase:create,alter,drop

Table:create,alter,drop

view/function/trigger/procedure:create,alter,drop

Administrator Privileges

管理权限

Shutdown DataBase

关闭数据库

Replication Slave

搭建数据库储存结构

Replication Client

数据库储存结构的一种权限

File Privilege

文件权限,将数据库的数据文本导出等操作。

创建用户并 赋权

1、使用mysql自带

create user ‘netease’@‘localhost’ indentified by ‘netease163’;

grant select on *.* to ‘netease’@‘localhost’ whith grant option;

2、更改数据库记录

3、grant语句会判断是否存在该用户,若不存在则创建新的。

grant select on *.* to ‘netease’@‘localhost’ indentified by ‘netease163’ with grant option;

查看用户权限信息

查看当前用户:

show grants;

查看其他用户权限

show grants for netease@‘localhost’;

如何更改用户权限

回收不需要的权限

revoke select on *.* from netease@‘localhost’;

重新赋权

grant insert on *.* to netease@‘localhost’;

如何更改用户的密码

1、用新密码,grant语句重新授权

2、更改数据记录,update user表的Password字段

注意:用这种办法,更改完需要flush privileges刷新权限信息,不推荐

删除用户

drop user;

高危操作

With Grant Option

允许被授予权利的人把这个权利授予其他人

Mysql权限信息的存储结构

mysql权限信息是存储在数据表中的

mysql账号对应的密码也加密存储在数据库表中

每一种权限类型在元数据里都是枚举类型,表明是否有该权限。

Mysql权限上有哪些问题

使用Binary二进制安装管理用户没设置密码

Mysql默认的test库不受权限控制,存在安全风险。

mysql_secure_installation

二进制包中的的命令

可以为root设置一个密码

可以删除非本机登陆的root用户

可以删除一些空用户。

可以删除test database

小结

权限相关操作不要直接操作表,统一使用mysql命令。

使用二进制安装mysql安装后,需要重置管理用户(root)密码。

线上数据库不要留test库。

预览
Loading comments...
0 条评论

暂无数据

example
预览