[精选]第9章MySQL安全管理7572.pptx
《[精选]第9章MySQL安全管理7572.pptx》由会员分享,可在线阅读,更多相关《[精选]第9章MySQL安全管理7572.pptx(30页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第9章章 MySQL安全管理安全管理用户管理用户管理9.19.2权限控制权限控制表维护语句表维护语句9.39.1 用户管理用户管理9.1.1 添加、删除用户添加、删除用户1添加用户添加用户可以使用CREATEUSER语法添加一个或多个用户,并设置相应的密码。语法格式:语法格式:CREATEUSER用户IDENTIFIEDBYPASSWORD密码,userIDENTIFIEDBYPASSWORDpassword.用户=:用户名主机名9.1.1 添加、删除用户添加、删除用户【例9.1】添加两个新的用户,king的密码为queen,palo的密码为530415。createuserkingloca
2、lhostidentifiedbyqueen,palolocalhostidentifiedby530415;完成后可切换到mysql数据库,从user表中查到刚刚添加的两个用户记录:usemysqlshowtables;select*fromuser结果如图9.1所示。9.1.1 添加、删除用户添加、删除用户9.1.1 添加、删除用户添加、删除用户2删除用户删除用户语法格式:语法格式:DROPUSER用户,用户.DROPUSER语句用于删除一个或多个MySQL账户,并取消其权限。要使用DROPUSER,必须拥有mysql数据库的全局CREATEUSER权限或DELETE权限。【例9.2】删除
3、用户palo。dropuserpalolocalhost;删除后可以用上面介绍的方法查看一下效果。9.1.2 修改用户名、密码修改用户名、密码1修改用户名修改用户名可以使用RENAMEUSER语句来修改一个已经存在的SQL用户的名字。语法格式:语法格式:RENAMEUSER老用户TO新用户,老用户TO新用户.【例9.3】将用户king的名字修改为ken。renameuserkinglocalhosttokenlocalhost;完成后可用前面介绍的方法查看一下是否修改成功。9.1.2 修改用户名、密码修改用户名、密码2修改用户密码修改用户密码要修改某个用户的登录密码,可以使用SETPASSWO
4、RD语句。语法格式:语法格式:SETPASSWORDFOR用户=PASSWORD(新密码)【例9.4】将用户ken的密码修改为qen。setpasswordforkenlocalhost=password(qen);9.2 权限控制权限控制9.2.1 授予权限授予权限可以授予的权限有以下几组。(1)列权限:和表中的一个具体列相关。例如,使用UPDATE语句更新表xs学号列的值的权限。(2)表权限:和一个具体表中的所有数据相关。例如,使用SELECT语句查询表xs的所有数据的权限。(3)数据库权限:和一个具体的数据库中的所有表相关。例如,在已有的xscj数据库中创建新表的权限。(4)用户权限:和
5、MySQL所有的数据库相关。例如,删除已有的数据库或者创建一个新的数据库的权限。9.2.1 授予权限授予权限GRANT语法格式:GRANTpriv_type(列名).ONobject_type表名或视图名|*|*.*|数据库名.*TO用户IDENTIFIEDBYPASSWORD密码.WITHwith_option.object_type=:TABLE|FUNCTION|PROCEDUREwith_option=:GRANTOPTION|MAX_QUERIES_PER_HOURcount|MAX_UPDATES_PER_HOURcount|MAX_CONNECTIONS_PER_HOURcoun
6、t|MAX_USER_CONNECTIONScount9.2.1 授予权限授予权限1.授予表权限和列权限授予表权限和列权限(1)授予表权限)授予表权限授予表权限时,priv_type可以是以下值:lSELECT:给予用户使用SELECT语句访问特定的表的权力。lINSERT:给予用户使用INSERT语句向一个特定表中添加行的权力。lDELETE:给予用户使用DELETE语句向一个特定表中删除行的权力。lUPDATE:给予用户使用UPDATE语句修改特定表中值的权力。lREFERENCES:给予用户创建一个外键来参照特定的表的权力。lCREATE:给予用户使用特定的名字创建一个表的权力。lALT
7、ER:给予用户使用ALTERTABLE语句修改表的权力。lINDEX:给予用户在表上定义索引的权力。lDROP:给予用户删除表的权力。lALL或ALLPRIVILEGES:表示所有权限名。9.2.1 授予权限授予权限【例9.5】授予用户ken在xs表上的SELECT权限。usexscj;grantselectonxstokenlocalhost;若在TO子句中给存在的用户指定密码,则新密码将原密码覆盖。如果权限授予了一个不存在的用户,MySQL会自动执行一条CREATEUSER语句来创建这个用户,但必须为该用户指定密码。【例9.6】用户liu和zhang不存在,授予它们在xs表上的SELECT
8、和UPDATE权限。grantselect,updateonxstoliulocalhostidentifiedbylpwd,zhanglocalhostidentifiedbyzpwd;9.2.1 授予权限授予权限(2)授予列权限)授予列权限对于列权限,priv_type的值只能取SELECT、INSERT和UPDATE。权限的后面需要加上列名column_list。【例9.7】授予ken在xs表上的学号列和姓名列的UPDATE权限。usexscjgrantupdate(姓名,学号)onxstokenlocalhost;9.2.1 授予权限授予权限2.授予数据库权限授予数据库权限授予数据库权
9、限时,priv_type可以是以下值:lSELECT:给予用户使用SELECT语句访问特定数据库中所有表和视图的权力。lINSERT:给予用户使用INSERT语句向特定数据库中所有表添加行的权力。lDELETE:给予用户使用DELETE语句删除特定数据库中所有表的行的权力。lUPDATE:给予用户使用UPDATE语句更新特定数据库中所有表的值的权力。lREFERENCES:给予用户创建指向特定的数据库中的表外键的权力。lCREATE:给予用户使用CREATETABLE语句在特定数据库中创建新表的权力。lALTER:给予用户使用ALTERTABLE语句修改特定数据库中所有表的权力。lINDEX:
10、给予用户在特定数据库中的所有表上定义和删除索引的权力。lDROP:给予用户删除特定数据库中所有表和视图的权力。lCREATETEMPORARYTABLES:给予用户在特定数据库中创建临时表的权力。lCREATEVIEW:给予用户在特定数据库中创建新的视图的权力。lSHOWVIEW:给予用户查看特定数据库中已有视图的视图定义的权力。lCREATEROUTINE:给予用户为特定的数据库创建存储过程和存储函数等权力。lALTERROUTINE:给予用户更新和删除数据库中已有的存储过程和存储函数等权力。lEXECUTEROUTINE:给予用户调用特定数据库的存储过程和存储函数的权力。lLOCKTABL
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精选 MySQL 安全管理 7572
限制150内