立即学习:https://edu.youkuaiyun.com/course/play/27328/370703?utm_source=blogtoedu
DCL—— 数据控制语言
主要功能
1. 创建用户
2. 删除用户
3. 修改密码
4. 给予用户权限
5.撤销用户权限
mysql的权限体系
1. 全局层级:适用于一个给定服务器中的所有数据库。这些权限存储在mysql.user表中。GRANT ALL ON *.* 和 REVOKE ALL ON *.*只授予和撤销全局权限
2. 数据库层级:适用于一个给定数据库中的所有目标。这些权限存储在mysql.db和msql.host表中。GRANT ALL ON db_name.* 和REVOKE ALL ON db_name.* 只属于和撤销数据库权限
3. 表层级:适用于一个给定表的所有列。这些权限存储在mysql.tables_priv表中。GRANT ALL ON db_name.table_name 和 REVOKE ALL ON db_name.table_name只授予和撤销表权限
4.列层级:适用于给定表中的单一列。这些权限存储在mysql.columns_priv表中。当时用REVOKE时,必须指定与被授权列相同的列
5.子程序层级:CREATE ROUTINE, ALTER ROUTING, EXECUTE和GRANT权限适用于已存储的子程序。这些权限可以被授予为全局层级和数据库层级。而且,除了CREATE ROUTINE外,这些权限可以被授予为子程序层级,并存储在mysql.proc_prev中。
表名
1.user:用户权限表,记录账号,密码以及全局性权限信息
2.db:记录数据库相关权限
3. table_priv:用户对某个表拥有的权限
4. column_priv:用户对某个表的某个列拥有的权限
5.procs_priv:用户对存储过程以及存储函数的操作权限
创建用户
create user ‘用户名’[@'主机名'][identified by '密码']
注:用户账号由两部分组成 ,用户名和主机名,主机名可以是ip或机器名称,主机名为%表示允许任何地址的主机远程登陆mysql数据库
删除用户
drop user ‘用户名’[@'主机名']
修改密码
alter user ‘用户名’@‘主机名’ identified by ‘新密码’