一、    用户管理
Root用户是MySQL数据库管理系统中的系统管理员,但在实际开发过程中通常需要根据不同的开发者分配不同的用户,这样有利于用户的管理和维护。
1、 用户的创建:
  1) 方式1:使用MySQL提供的用户管理语句完成CREATE USER
语法:
  Create user <用户名@主机名> identified by <初始密码>;
说明:
  identified by用于指定用户的初始密码,系统会自动对密码进行加密处理,新创建的用户将被保存到mysql.user表中,密码采用加密后的暗文保存。
举例:
  CREATE USER 'user_39'@'localhost' IDENTIFIED BY "123456";
  SELECT * FROM mysql.`user`;
  DROP user user_39;
  2) 方式2:通过使用insert into语句向MySQL.user表中添加记录,达到创建用户的目的。
  语法:
    Insert into。。。。。。
  说明:
    a) 有6个字段通常需要赋值:HOST、user、password、ssl_cipher、x509_issuer、x509_subject
    b) 不会自动对密码加密,需要时可以使用password()函数手动加密
    c) 用户创建后需要使用权限刷新语句FLUSH PRIVILEGES;才能被系统识别
  举例:
    -- 密码需要用加密函数
    INSERT INTO mysql.user(HOST,user,password,ssl_cipher,x509_issuer,x509_subject)
    VALUES('localhost','user_399',PASSWORD(''),'','','');
    -- 刷新权限
    FLUSH PRIVILEGES;
    -- 删除user_399
    DELETE FROM mysql.`user` WHERE HOST = 'localhost' AND user = 'user_399';
2、 用户权限的授予:
语法:
  Grant {权限列表 | all} ON {数据库名.数据库对象名列表 | *.*} to <用户名@主机名>[identified by 密码] [with grant option];
说明:
  1) All是所有权限的通配符,*是所有数据库和数据库对向的通配符。
  2) 使用grant也可以创建不存在的新用户,同时也完成授权。
  3) with grant option若添加此项表示被授权的用户还可以将权限授予其他用户,前提是该用户具有grant的权限。
举例:
  GRANT ALL ON myschool39.* TO 'user_39'@'localhost' WITH GRANT OPTION;
  GRANT ALL ON mysql.* TO 'user_39'@'localhost' WITH GRANT OPTION; 3、 用户权限的回收:
语法:
  revoke{权限列表 | all} ON {数据库名.数据库对象名列表 | *.*} from <用户名@主机名>;
说明:当某个用户的权限被回收时,它授予出去的权限会不会被回收?
举例:REVOKE ALL ON myschool39.* FROM 'user_39'@'localhost' ;
4、 用户的修改:修改用户密码
语法:
  Set password [for 用户名@主机名] = password(新密码);
说明:
  1) for 用户名@主机名:指定给其他某个用户修改密码,不指定表示给当前用户修改密码。
  2) passw()函数必须使用,否则无法完成修改。
举例:
  1. SET password FOR 'user_39'@'localhost' = password(''); -- 给user_39修改密码
  2. SET password = password(''); -- 给当前用户修改密码
5、 删除用户
语法:drop user <用户名@主机名>;
  举例: 二、 数据库的备份与恢复
为了防止意外发生,我们需要对数据库中的数据进行备份,一旦灾难来临时,可以使用备份的数据进行恢复。
MySQL提供了备份和恢复的命令,命令需要在DOS命令提示符下使用。
1. 数据库的备份
语法1:备份单个数据库
  C:\>mysqldump -u 用户名 –p 密码 数据库名 数据表名 1 数据表名 2 > 路径\及备份文件名.sql
  语法2:备份多个数据库
  C:\>mysqldump -u 用户名 –p 密码 --databases 数据库名 数据表名 1 数据表名 2 > 路径\及备份文件名.sql
  语法3:备份全部数据库
  C:\>mysqldump -u 用户名 –p 密码 –-all-databases > 路径\及备份文件名.sql
举例:
  1) mysqldump –u root -proot myschool39 > d:\db39.sql
  2) mysqldump –u root -proot --databases myschool39 mysql > d:\mutil.sql
  3) mysqldump –u root -proot –-all-databases > d:\all.sql 2. 数据库的恢复
语法1:恢复单个数据库
  C:\>mysqldump -u 用户名 –p密码 数据库名 < 路径\及备份文件名.sql
语法2:恢复多个或全部数据库
  C:\>mysqldump -u 用户名 –p密码 < 路径\及备份文件名.sql
举例:
  1) mysqldump –u root -proot myschool39 < d:\db39.sql
  2) mysqldump –u root -proot < d:\mutil.sql
  3) mysqldump –u root -proot < d:\all.sql

mysql 12章_MySQL数据库的高级管理的更多相关文章

  1. Learning-MySQL【2】:MySQL存储引擎及数据库的操作管理

    一.存储引擎 存储引擎实际上就是如何存储数据.如何为存储的数据建立索引和如何更新.查询数据.存储引擎也可以称为表类型. MySQL提供了插件式(pluggable)的存储引擎,存储引擎是基于表的.同一 ...

  2. MySQL存储引擎及数据库的操作管理

    一.存储引擎 存储引擎实际上就是如何存储数据.如何为存储的数据建立索引和如何更新.查询数据.存储引擎也可以称为表类型. MySQL提供了插件式(pluggable)的存储引擎,存储引擎是基于表的.同一 ...

  3. oracle基本语句(第七章、数据库逻辑对象管理)

    索引.实体化视图.簇.散列簇.序列.同义词 1.创建表 CREATE TABLE <表名>(<列名1> <数据类型>,……); CREATE GLOBAL TEMP ...

  4. MySQL 08章_数据库设计

    一. 关系模型与对象模型之间的对应关系 序号 关系模型:数据库 对象模型:java程序 1 数据表table 实体entity:特殊的java类 2 字段field 属性attribute/字段fie ...

  5. 12章 应用spary制作高级网页组件

    比较复杂的用户界面,tab面板  伸缩面板和折叠面板等组件.   tab面板和菜单实际上分为两种           一种是切换各个tab页中的内容时并不刷新浏览器窗口,仅仅是被隐藏起来了  利用ja ...

  6. 第一章 初识数据库Mysql

    初识数据库Mysql(my)   在企业中 percona: 一.数据库基础知识 Mysql是一个开放源代码的数据库管理系统(DBMS),它是由Mysql AB公司开发.发布并支持的.Mysql是一个 ...

  7. MySQL性能调优与架构设计——第12章 可扩展设计的基本原则

    第12章 可扩展设计的基本原则 前言: 随着信息量的飞速增加,硬件设备的发展已经慢慢的无法跟上应用系统对处理能力的要求了.此时,我们如何来解决系统对性能的要求?只有一个办法,那就是通过改造系统的架构体 ...

  8. 温故而知新-mysql高级管理

    温故而知新-mysql高级管理 1 mysql的一些授权信息都保存在授权表中 授权表是6个 db,user,host,tables_priv,columns_priv,procs_priv 这6个表 ...

  9. MySQL<数据库的高级操作>

    数据库的高级操作 MySQL提供了一个mysqldump命令,它可以实现数据的备份 数据的备份 1.备份单个数据库 mysqldump -uusername -ppassword dbname [tb ...

随机推荐

  1. 教你一些IDE中比较骚的操作技巧!

    本文转自微信公众号「程序员的成长之路」id:cxydczzl IDEA 有个很牛逼的功能,那就是后缀补全(不是自动补全),很多人竟然不知道这个操作,还在手动敲代码. 这个功能可以使用代码补全来模板式地 ...

  2. linux 创建多级目录 mkdir -p

    原文地址:http://www.dutor.net/index.php/2010/06/cmd-mkdir-p/ mkdir的-p选项允许你一次性创建多层次的目录,而不是一次只创建单独的目录.例如,我 ...

  3. jsp2自定义标签开篇

    在JSP2中开发标签库需要以下几个步骤: 1.开发自定义标签处理类: 2.建立一个*.tld文件,每个*.tld文件对应一个标签库,每个标签库可包含多个标签: 3.在JSP文件中使用自定义标签. 第一 ...

  4. Django框架(六)—— 视图层:HttpRequest、HTTPResponse、JsonResponse、CBV和FBV、文件上传

    目录 视图层 一.视图函数 二.视图层之HttpRequest对象 三.视图层之HttpResponse对象 四.视图层之JsonResponse对象 五.CBV和FBV 六.文件上传 视图层 一.视 ...

  5. 第十一篇 session和cookie自动登录机制

    session和cookie的作用和区别可以在网上查到,这里简单说下,我们使用的http协议本身是种无状态的协议,就是说web服务器接收到浏览器的请求,会直接返回相应内容,并不会检查是哪个浏览器,即浏 ...

  6. C static extern和全局变量

    #include <stdio.h> //默认全局变量为外部变量 int a; //当全局变量前面加上static时,该变量为内部变量 static int b; void test(); ...

  7. axios的介绍及使用

    特点:支持promise API . 拦截请求和响应.转换请求数据和响应数据.取消请求.自动转换JSON数据.客户端支持防御XSRF等: axios请求方法(需后端定义):get获取数据. post提 ...

  8. java heap space以及jvisualvm.exe 工具

    最近遇到了java heap space错误. 这个问题的原因,其实还是堆溢出了. 解决这个问题 1 首先我们考虑,在代码中哪里使用了较多的对象,但是又没有及时回收. 2 我们可以通过  jvisua ...

  9. python_django_urls基础配置

    url配置:请求地址与views函数的匹配 首先,指定根级url配置文件,默认为setting.py中的ROOT_URLCONF='项目名.urls'(俺们也不用去修改啥) 我们urls有两个,一个是 ...

  10. 41. wait notify 方法

    wait()  等待,如果一个线程执行了wait方法,那么该线程就会进去一个以锁对象为标识符的线程池中等待 notity() 唤醒,如果一个线程执行了notity方法,那么就会唤醒以锁对象为标识符的线 ...