mysql有关权限的表都有哪几个?
mysql服务器通过权限表来控制用户对数据库的访问
mysql在安装时会自动创建一个名为mysql的数据库,mysql 数据库中存储的都是用户权限表,用户登录以后,mysql会根据这些权限表的内容为每个用户赋予相应的权限
权限表共有以下5个:
- user表
记录允许连接到服务器的账号信息,里面的权限都是全局的
- db权限表
记录各个帐号在各个数据库上的操作权限
- host权限表
配合db权限表,对给定主机上数据库级操作权限作更细致的控制。这个权限表不受grant和revoke语句的影响
- table_priv权限表
记录数据表级的操作权限
- columns_priv权限表
记录数据列级的操作权限
创建用户,指定主机登录、指定用户登录密码
CREATE USER ‘dolphinscheduler’@‘%’ IDENTIFIED BY ‘dolphinscheduler’;
CREATE USER
是创建新用户的关键字
@'%'
@后面通常跟主机名,表示允许哪些主机连接。%,表示允许从任何主机连接。
IDENTIFIED BY 'dolphinscheduler'
表示用户的密码是’dolphinscheduler’
授予用户某库下的权限
GRANT ALL PRIVILEGES ON dolphinscheduler.* TO ‘dolphinscheduler’@‘%’;
GRANT
是授予权限的关键字
ALL PRIVILEGES
表示授予所有权限,包括SELECT、INSERT、UPDATE、DELETE等
ON dolphinscheduler.*
表示这些权限适用于数据库’dolphinscheduler’下的所有表
TO 'dolphinscheduler'@'%'
表示将权限授予用户名为’dolphinscheduler’,从任何主机(由’%'表示)连接的用户