资源预览内容
第1页 / 共53页
第2页 / 共53页
第3页 / 共53页
第4页 / 共53页
第5页 / 共53页
第6页 / 共53页
第7页 / 共53页
第8页 / 共53页
第9页 / 共53页
第10页 / 共53页
亲,该文档总共53页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,2024/4/13,#,单元,7 MySQL,用户管理,MySQL,数据库管理与应用任务式教程(慕课版),学习内容,任务,1,管理学生成绩管理数据库的用户,2,任务,2,管理学生成绩管理数据库用户的权限,任务,4,卸载,MySQL,任务,1,管理学,生成绩管理数据库的用户,7.1.1,了解,MySQL,的权限表,MySQL,在安装时会自动创建一个名为,mysql,的系统数据库,它保存了数据库的账户信息、权限信息、存储过程和时区等信息。,mysql show databases;,mysql use mysql;,mysql show tables;,执行,SHOW TABLES,语句可以查看当前数据库下存在的所有表,,MySQL5.7.20,版本中包含,31,张表,用户权限信息被分别存储在其中的,user,、,db,、,host,、,tables_priv,、,columns_priv,和,procs_priv,表中。在,MySQL,启动时,服务器将这些表中权限信息读入内存。当用户登录系统后,,MySQL,数据库系统会根据这些表的内容为每个用户赋予相应的权限。,任务,1,管理学,生成绩管理数据库的用户,mysql desc user;,mysql,数据库中的,user,表是,MySQL,中最重要的一个权限表,用来记录允许连接到服务器的用户信息,包括用户名称、主机名、密码和操作权限等。,使用,desc user,语句可以查看这些字段,它们可以分为,4,类,即用户字段、权限字段、安全字段和资源控制字段。,1,user,表,任务,1,管理学,生成绩管理数据库的用户,User,表中的,host,、,user,和,pssword,字段都属于用户字段,存储了用户连接,MySQL,数据库时需要输入的信息。,host,表示主机名或主机的,IP,地址(即用户连接,MySQL,时所用主机的名字)、,user,表示用户名、,authentication_string,表示密码字段。用户登录时,如果这,3,个字段同时匹配,,MySQL,数据库系统才会允许其登录。,(1)用户字段,MySQL 5.7,版本不再使用,Password,来作为密码字段。,任务,1,管理学,生成绩管理数据库的用户,可以看出,,u,ser,字段的值有如下,3,个。,mysql.sys,:,用于,sys schema,中对象的定义。使用,mysql.sys,可避免数据库管理员重命名或者,删除,root,用户时,发生问题,。该用户已被锁定,客户端无法连接。,mysql.session,:,用于插件,内部访问,服务器。该用户已被锁定,客户端无法连接。,root,:,用于管理。该用户拥有所有权限,可执行任何操作。,host,、,user,和,password,这,3,个字段决定了用户能否登录,用户登录时,会先判断这,3,个字段的值是否同时匹配,若是,,MySQL,数据库系统才会,允许用户登录,。,【,例题,7.1】,使用,select,语句查看,user,表中的所有用户。,mysql select host,user,authentication_string from user;,任务,1,管理学,生成绩管理数据库的用户,user,表中以,_priv,结尾的字段都是权限字段,如表,7-1,所示。权限字段决定了用户的,权限,用来,描述在全局范围内决定是否允许对数据和数据库进行操作。,(,2,)权限字段,权限,字段值的数据类型为,ENUM,,可取的值只有,Y,和,N,,,Y,表示用户有对应的权限,,N,表示用户没有对应的权限。从安全角度考虑,这些字段的默认值都为,N,。,任务,1,管理学,生成绩管理数据库的用户,表,7-1 user,表的权限字段及相关介绍,属性名,对应权限,字段说明,s,elect_priv,SELECT,允许使用,SELECT,语句检索数据,insert_priv,INSERT,允许使用,INSERT,语句插入数据,update_priv,UPDATE,允许使用,UPDATE,语句修改现有数据,delete_priv,DELETE,允许使用,DELETE,语句从表中删除现有数据,create_priv,CREATE,允许创建新的数据库和表,但是不允许创建索引,d,rop_priv,DROP,允许删除现有的数据库和表,但是不允许删除索引,reload_priv,RELOAD,允许执行大量的服务器管理操作,包括日志、权限、主机、查询和表,shutdown_priv,SHUTDOWN,允许关闭,MySQL,服务器,process_priv,PROCESS,允许使用,SHOW PROCESSLIST,语句查看服务器内正在运行的线程(进程)的信息,file_priv,FILE,允许加载服务器主机上的文件,grant_priv,GRANT,允许将已经授予某用户的权限再授予其他用户,references_priv,REFERENCES,目前并没有多大的作用,index_priv,INDEX,允许创建和删除表的索引,任务,1,管理学,生成绩管理数据库的用户,表,7-1 user,表的权限字段及相关介绍,属性名,对应权限,字段说明,alter_piv,ALTER,允许重命名和修改表的结构,show_db_priv,SHOW DATABASES,允许查看所有的数据库,super_priv,SUPER,允许使用某些强大的管理功能,create_tmp_table_priv,CREATE TEMPORARY TABLES,允许创建临时表,lock_tables_priv,LOCAK TABLES,允许使用,LOCK TABLES,语句锁定表,execute_priv,EXECUTE,允许执行存储过程和自定义函数,repl_slave_priv,REPLICATION SLAVE,允许读取用户维护、复制数据库环境的二进制日志文件,repl_client_priv,REPLICATION CLIENT,允许从服务器和主服务器的位置复制,create_view_priv,CREATE VIEW,允许创建视图,show_view_priv,SHOW VIEW,允许查看视图,create_routine_priv,CREATE ROUTINE,允许创建存储过程或自定义函数,alter_routine_priv,ALTER ROUTINE,允许修改存储过程或自定义函数,create_user_priv,CREATE USER,允许执行,CREATE USER,语句创建用户,event priv,CREATE/DROP EVENT,允许创建、修改和删除事件,trigger_priv,CREATE/DROP TRIGGER,允许创建和删除触发器,任务,1,管理学,生成绩管理数据库的用户,上述输出结果表示,当前主机的,root,用户具有,SELECT,、,INSERT,和,UPDATE,的权限。在上述的所有权限字段中,每一个权限以一个单独的列指定,这些列全部是,ENUM(Y,N),枚举类型。如果不为其指定值,则使用默认值,N,。,【,例题,7.2】,下面通过,SELECT,语句查看当前,root,用户是否具有,SELECT,、,INSERT,和,UPDATE,的权限,mysql,SELECT select_priv,insert_priv,update_priv,user,host FROM,user,-WHERE,user=,root AND,host=localhost;,任务,1,管理学,生成绩管理数据库的用户,安全字段主要用来判断用户是否能够成功登录。,user,表中有,ssl_type,、,ssl_cipher,、,x509_issuser,和,x509_subject,这,4,个安全字段。其中,ssl,用于加密,,x509,标准可以用来表示用户,。,通常标准的,MySQL,发行版本并不支持,ssl,功能,执行,SHOW VARIABLES,LIKEhave_openss1,语句,可以查看,MySQL,是否具有该,功能,具体语句如下。,(,3,)安全字段,have_openssl,的值为,DISABLED,,表明该版本的,MySQL,不支持,ssl,加密功能。,mysql,SHOW VARIABLES LIKE have_openss1;,任务,1,管理学,生成绩管理数据库的用户,资源控制字段用来限制用户使用的资源。,user,表中包含如下,4,个资源控制字段,。,max_questions,:,表示用户每小时允许执行的查询次数,。,max_updates,:,表示每小时允许执行多少次更新,。,max_connections,:,表示每小时建立多少次连接,。,max_user_connections,:,表示单个用户可以同时具有的连接数,。,它们,的默认值都是,0,,表示没有限制。,(,4,)资源控制字段,任务,1,管理学,生成绩管理数据库的用户,db,表中存储了用户对某个数据库的操作权限,db,表的结构如表,7-2,所示。这里的权限适用于一个数据库中的所有表。,2,db,表,字段,host,、,user,、,db,为用户字段,表示从某个主机连接某个用户对某个数据库的操作权限。,db,表中的权限字段和,user,表中的权限字段大致相同,只是,user,表中的权限是针对所有数据库的,而,db,表中的权限只针对指定的数据库。如果希望用户只对某个数据库有操作权限,可以先将,user,表中对应的权限设置为,N,,然后在,db,表中设置对应数据库的操作权限为,Y,。,任务,1,管理学,生成绩管理数据库的用户,表,7-2 db,表的结构,字段名,字段类型,是否为空,主键,默认值,字段说明,host,CHAR(60),NO,PRI,主机名或,IP,地址,db,CHAR(64),NO,PRI,数据库名,user,CHAR(32),NO,PRI,用户名,select_priv,ENUM(N,Y),NO,N,用于检索数据,insert_priv,ENUM(N,Y),NO,N,用于插人数据,update_priv,ENUM(N,Y),NO,N,用于修改现有数据,delete_priv,ENUM(N,Y),NO,N,用于删除现有数据,create_priv,ENUM(N,Y),NO,N,用于创建新的数据库和表,drop_priv,ENUM(N,Y),NO,N,用于删除现有的数据库和表,grant_priv,ENUM(N,Y),NO,N,用于执行大量的服务器管理操作,references_priv,ENUM(N,Y),NO,N,用于目前并没有多大的作用,任务,1,管理学,生成绩管理数据库的用户,表,7-2 db,表的结构,字段名,字段类型,是否为空,主键,默认值,字段说明,index_priv,ENUM(N,Y),NO,N,用于创建和删除表的索引,alter_priv,ENUM(N,Y),NO,N,用于重命名和修改表的结构,create_tmp_table_priv,ENUM(N,Y),NO,N,用于创建临时表,lock_tables_priv,ENUM(N,Y),NO,N,用于锁定表,create_view_priv,ENUM(N,Y),NO,N,用于创建视图,show_view_priv,ENUM(N,Y),NO,N,用于查看视图,create_routine_priv,ENUM(N,Y),NO,N,用于创建存储过程或自定义函数,alter_routine_priv,ENUM(N,Y),NO,N,用于修改存储过程或自定义函数,execute_priv,ENUM(N,Y),NO,N,用于执行存储过程或自定义函数,event_priv,ENUM(N,Y),NO,N,用于创建、修改和删除事件,trigger_priv,ENUM
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号