4.4运行与维护数据库_第1页
4.4运行与维护数据库_第2页
4.4运行与维护数据库_第3页
4.4运行与维护数据库_第4页
4.4运行与维护数据库_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

MySQL数据库项目四:学生寝室管理数据库MySQL数据库4.4.1使用SQL语句实现用户管理课程回顾1添加用户2删除用户使用SQLyog图形管理工具实现3修改用户信息是否可以直接使用SQL语句实现用户管理呢?任务添加用户1删除用户2修改用户信息3使用SQL语句实现用户管理一、创建普通用户语法:CREATEUSER‘username’@‘hostname’[IDENTIFIEDBY‘password’];MySQL数据库网络课程username:表示添加的普通用户名,也可以添加多个用户,各用户名之间需要使用半角逗号分隔hostname:表示主机名关键字identifiedby:用于设置用户的密码password:表示用户的密码在添加用户时也可以先不设置密码一、创建普通用户语法:CREATEUSER‘username’@‘hostname’[IDENTIFIEDBY‘password’];MySQL数据库网络课程主机名的表示有三种方法:第一种是IP地址,表示这个IP可以访问数据库第二种使用localhost表示本机主机第三种通配符,用%表示,表示任何用户都能访问注意用户名相同,但主机名不同的用户不是同一用户例如root’@’localhost’和‘root’@‘%’是两个不同的用户MySQL数据库网络课程【案例1】添加两个普通用户(1)用户名user1,密码111(2)用户名user2,密码为空二、删除MySQL用户语法1:DROPUSER‘username’@‘hostname’;语法2:DELETEFROMuserWHEREhost=‘localhost’ANDuser=‘username’;MySQL数据库网络课程二、删除MySQL用户语法1:DROPUSER‘username’@‘hostname’;MySQL数据库网络课程删除的是表结构删除掉的用户不仅将user表中的数据删除,还会删除诸如db和其他权限表内的内容二、删除MySQL用户语法2:DELETEFROMuserWHEREhost=‘localhost’ANDuser=‘username’;MySQL数据库网络课程只删除表中的数据,也就是user表中的的用户信息其他表不会删除后期如果命名为一个和已删除用户名相同的名字,其权限会被继承注意,如使用DELDTE语句,需要在删除后,执行重新加载用户权限的命令【案例2】分别用DROPUSER语句删除用户user1DELDTE语句删除用户user2三、修改MySQL用户名及密码renameuser语句用于对已存在的用户进行重命名,可以一次

给多个用户重命名,各用户信息之间使用半角逗号分隔使用renameuser语句时,必须拥有MySQL数据库的全局CREATEUSER权限或UPDATE权限如果旧用户不存在或者新用户已存在,则会出现错误语法1:RENAMEUSER‘oldname’@’host’TO‘newname’@’host’[,...];MySQL数据库网络课程【案例3】用RENAMEUSER语句将用户“user1”、“user2”的名称分别重命名为“usernew1”、“usernew2”修改用户的密码语法:ALTERUSER‘root’@’localhost’identifiedby‘password’;注意:使用alteruser的语句修改密码时需要先登录MySQL服务器MySQL数据库网络课程【案例4】用ALTERUSER语句将普通用户user的密码修改为‘000’课程小结1添加用户2删除用户注意,所有使用的符号都应是英文状态下的符号,即半角状态下的符号3修改用户信息使用SQL语句实现用户管理MySQL数据库4.4.2使用SQL语句实现权限管理课程回顾1查看用户权限2授权用户权限使用SQLyog图形管理工具实现3撤销用户权限任务用户权限的查看1用户权限的授权2用户权限的撤销3使用SQL语句实现用户管理一、查看用户权限语法:SHOWGRANTSFOR‘username’@’hostname’;如查看的是当前用户的权限,则直接用SHOWGRANTS;MySQL数据库网络课程【案例1】使用showgrants语句分别查询用户(1)root(2)test(3)user1二、授予权限在语法中,权限列表可以是all,表示所有权限,也可以是select、update等权限当有多个权限时,关键字之间用逗号分开MySQL数据库网络课程语法:GRANT权限列表ONdbname.tablenameTO‘username’@’hostname’[IDENTIFIEDBY‘password’][WITHGRANTOPTION];数据库名指定表名语法:GRANT权限列表ONdbname.tablenameTO‘username’@’hostname’[IDENTIFIEDBY‘password’][WITHGRANTOPTION];identifiedby:指定用户的登录密码,可以省略不写WITHGRANTOPTION:表示该用户可以将自己拥有的权限授权给别人MySQL数据库网络课程二、授予权限权限传递如果在用户授权的时候,没有加withgrantoption参数,则权限不能传递该用户在为其他用户授权时,就会提示错误注意可以使用GRANT重复给用户添加权限,权限叠加eg:先给用户添加一个select权限,然后又给用户添加一个insert权限,那么该用户就同时拥有了select和insert权限【案例2】按照以下顺序依次给user1授权(1)授予所有数据库的select权限(2)授予所有数据库的select权限(3)授予所有权限三、撤销用户权限在MySQL中,为了保证数据库的安全性,需要将用户不必要的权限收回语法:REVOKE权限列表ONdbname.tablenameFROM‘username’@’hostname’[,username’@’hostname,…];Revoke命令语法跟grant命令差不多,只需要把关键字to改成from即可并且不需要设置密码MySQL数据库网络课程Revoke可以收回所有权限,也可以收回部分权限当收回所有权限时,权限列表使用关键词all当收回部分权限时,多个权限名之间用逗号分隔MySQL数据库网络课程【案例3】撤销用户test的select和insert权限权限管理遵循的原则1只授予能满足需要的最小权限2创建用户的时候限制用户的登录主机3初始化数据库的时候删除没有密码的用户,安装完数据库的时候会自动创建一些用户,这些用户默认没有密码4为每个用户设置满足密码复杂度的密码5定期清理不需要的用户课程小结1showgrants用于用户权限的查看2grant用于用户权限的授权SQL语句实现权限管理的方法3Revoke用于用户权限的撤销MySQL数据库4.4.3使用SQL语句备份和还原数据库课程回顾数据库中的数据除了可能受到人为破坏外还可能受到意外事件的破坏数据库管理系统为用户提供准确、方便的备份与还原功能任务数据备份1数据还原2使用SQL语句实现备份和还原数据库数据备份一、备份数据mysqldump命令它可以对数据表、单个数据库、多个数据库以及所有数据库进行备份将数据库中的数据备份成一个文本文件,该文件的后名为.sqlMySQL数据库网络课程一、备份数据MySQL数据库网络课程数据表的结构和数据会存储在该文本文件中其包含了多条CREATE语句和INSERT语句使用这些语句可以重新创建数据表和插入数据注意mysqldump命令的相关操作需要在command窗口中执行且不需要登录MySQL服务器语法:mysqldump–uusername–ppassworddbnametbname1[tbname2···]>filename.sql1、备份数据表使用mysqldump命令可以备份单个数据库或数据库中数据表,语法格式如下:MySQL数据库网络课程username:表示用户名dbname:表示需要备份的数据库名称tbname:表示数据库中需要备份的数据表,可以指定多个数据表语法:mysqldump–uusername–ppassworddbnametbname1[tbname2···]>filename.sql1、备份数据表使用mysqldump命令可以备份单个数据库或数据库中数据表,语法格式如下:MySQL数据库网络课程右箭头”>”:表示mysqldump命令,将备份数据表的定义和数据写入备份文件filename.sql:表示备份文件的名称文件名,可以加绝对路径。通常将数据库备份成一个后缀名为.sql的文件【案例1】将数据库dormdb中的数据表student备份,备份文档命名为student.sql2、备份单个数据库语法:mysqldump–uusername–ppassworddbname>filename.sqlMySQL数据库网络课程备份单个数据库与备份数据表语法类似,只是省略了语法中的tbname数据表的名称因为是对整个数据库进行备份,所以直接写数据库的名字【案例2】将数据库dormdb备份,备份文档命名为dormdb.sql思考通过案例一和案例二,我们发现备份数据表和单个数据库的语法类似备份多个数据库命令该怎么写呢?MySQL数据库网络课程3、备份多个数据库--databases后面各数据库名称之间用空格隔开当只有一个数据库时,databases末尾的字母s要去掉语法:mysqldump–uusername–ppassword--databasesdbname1[dbname2dbname3···]>filename.sql将数据库dormdb和ess备份【案例3】MySQL数据库网络课程4、备份所有数据库语法中多了一个关键词all写数据库的名字语法:mysqldump–uusername–ppassword--all-databases>filename.sql将所有数据库备份【案例4】MySQL数据库网络课程数据还原二、数据库的还原当数据库中的数据丢失或者破坏时,就要通过备份数据库对数据进行还原语法1:mysql–uusername–p

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论