总的来说mysql的用户管理方法可以分为如下两种:

  1、直接对mysql.user 表进行[insert | update | delete] + flush privileges 这种方式主要针对那种对mysql.user比较了解的DBA;

  2、使用uml(user managerment language)语句 create user | drop user | grant | revoke | alter user 这种方式也是mysql推荐使用的;

下面的部分也主要对第二种方法进行说明:

1、mysql中的用户是什么?

  我们和QQ做一个类比QQ的用户是一个人,腾讯公司用用QQ号来唯一标识这个人;与QQ不同是的mysql中的用户有两个维度一个是用户名、另一个就是它发起连接时

  所在的主机

2、怎么来创建一个用户?

  每一个mysql用户对应着mysql.user 表中的一行;如果你对mysql的用户管理了然于心那么你可以使用insert 一行到mysql.user表,来完成创建任务;这种方式本文不

  会提到了,因为这样太累人了;先来看一下它的语法:

CREATE USER user_specification [, user_specification] ...

user_specification:
user [ identified_option ] auth_option: {
IDENTIFIED BY 'auth_string'
| IDENTIFIED BY PASSWORD 'hash_string'
| IDENTIFIED WITH auth_plugin
| IDENTIFIED WITH auth_plugin AS 'hash_string'
}

  创建一个dumper用户它只能通过本机的回环网卡连接到mysql数据库

create user dumper@'127.0.0.1' identified by '123@456';

3、grant 语句用来授权、权限是分层级的通常来说有实例级,数据库级,表级,列级;如果一用户有实例级别的select 权限,自然它也就有了数据库级,表级,列级的权限。

GRANT
priv_type [(column_list)]
[, priv_type [(column_list)]] ...
ON [object_type] priv_level
TO user_specification [, user_specification] ...
[REQUIRE {NONE | tsl_option [[AND] tsl_option] ...}]
[WITH {GRANT OPTION | resource_option} ...] GRANT PROXY ON user_specification
TO user_specification [, user_specification] ...
[WITH GRANT OPTION] object_type: {
TABLE
| FUNCTION
| PROCEDURE
} priv_level: {
*
| *.*
| db_name.*
| db_name.tbl_name
| tbl_name
| db_name.routine_name
} user_specification:
user [ auth_option ] auth_option: {
IDENTIFIED BY 'auth_string'
| IDENTIFIED BY PASSWORD 'hash_string'
| IDENTIFIED WITH auth_plugin
| IDENTIFIED WITH auth_plugin AS 'hash_string'
} tsl_option: {
SSL
| X509
| CIPHER 'cipher'
| ISSUER 'issuer'
| SUBJECT 'subject'
} resource_option: {
| MAX_QUERIES_PER_HOUR count
| MAX_UPDATES_PER_HOUR count
| MAX_CONNECTIONS_PER_HOUR count
| MAX_USER_CONNECTIONS count
}

授予一个用户所有权限:

这里有几个地方是要注意的

  1、all 权限并不包涵grant option 权限。

  2、all 权限也不包涵proxy 权限,并且proxy 的权限的层级是user级的

grant all on *.* to dumper@'127.0.0.1';
grant grant option on *.* to dumper@'127.0.0.1';
grant proxy on 'root'@'localhost' to dumper@'127.0.0.1';

MySQL用户管理语句001的更多相关文章

  1. MySQL用户管理及SQL语句详解

    1.1 MySQL用户管理 1.1.1 用户的定义 用户名+主机域 mysql> select user,host,password from mysql.user; +--------+--- ...

  2. 【转】MySQL用户管理及SQL语句详解

    [转]MySQL用户管理及SQL语句详解 1.1 MySQL用户管理 1.1.1 用户的定义 用户名+主机域 mysql> select user,host,password from mysq ...

  3. MySQL用户管理、常用sql语句、MySQL数据库备份恢复

    1.MySQL用户管理 给远程登陆用户授权:grant all on *.* to 'user1'@'127.0.0.1' identified by '123456' (这里的127.0.0.1是指 ...

  4. Linux centosVMware mysql用户管理、常用sql语句、mysql数据库备份恢复

    一.mysql用户管理 grant all on *.* to 'user1'@‘127.0.0.1’ identified by 'mimA123'; 创建user1用户 使用user1登录 /us ...

  5. MySQL 用户管理与权限管理

    MySQL 用户管理与权限管理 -- 操作环境mysql> show variables like 'version';  +---------------+--------+| Variabl ...

  6. Python 42 mysql用户管理 、pymysql模块

    一:mysql用户管理 什么是mysql用户管理 mysql是一个tcp服务器,应用于操作服务器上的文件数据,接收用户端发送的指令,接收指令时需要考虑到安全问题, ATM购物车中的用户认证和mysql ...

  7. Mysql用户管理及权限分配

    早上到公司,在服务器上Mysql的数据库里新建了个database,然后本地的系统里用原来连接Mysql账号admin连这个数据库.结果报错了,大概是这样子的: Access denied for u ...

  8. mysql事务管理和mysql用户管理

    1.什么是事务? 事务是一条或者是一组语句组成一个单元,这个单元要么全部执行,要么全不执行. 2.事务特性:ACID: A:atomicity原子性:整个事务中的所有操作要么全部成功执行,要么全部失败 ...

  9. MySQL(十六)之MySQL用户管理

    一.MySQL用户管理概述 MySQL是一个多用户的数据库,MYSQL的用户可以分为两大类: 超级管理员用户(root),拥有全部权限 普通用户,由root创建,普通用户只拥有root所分配的权限 二 ...

随机推荐

  1. 【iOS开发】添加子控件方式(懒加载,GCC)

    // // ViewController.m // GCC // // Created by admin on 15/10/7. // Copyright © 2015年 admin. All rig ...

  2. (\S)? 匹配0个或者一个前导字符

    ---------------------------------------------- "1" 模式: \"(?<id>(\S+)?)\" ? ...

  3. STL中istream_iterator和ostream_iterator的基本用法

    标准程序库定义有供输入及输出用的iostream iterator类,称为istream_iterator和ostream_iterator,分别支持单一型别的元素读取和写入.使用这两个iterato ...

  4. Linux Security模块

    一.Linux Security Modules Linux Security Modules (LSM) 是一种 Linux 内核子系统,旨在将内核以模块形式集成到各种安全模块中.在 2001 年的 ...

  5. PHP初识

    1. php是一种跨平台的语言,支持几乎全部的数据库. 以前觉得PHP与MYSQL是黄金组合,对于PHP能否支持MSSQL没有过了解,PHP支持几乎全部的数据库,也支持MSSQL(5.2.X版本可以用 ...

  6. iOS开发-Runtime详解(简书)

    简介 Runtime 又叫运行时,是一套底层的 C 语言 API,其为 iOS 内部的核心之一,我们平时编写的 OC 代码,底层都是基于它来实现的.比如: [receiver message]; // ...

  7. 河内塔(hanoi)

    理论: 河内塔: 1.有三根杆子A,B,C.A杆上有若干碟子 2.每次移动一块碟子,小的只能叠在大的上面 3.把所有碟子从A杆全部移到C杆上   讲解: 设A上有n个盘子.如果n=1,则将圆盘从A直接 ...

  8. 基于google earth engine 云计算平台的全国水体变化研究

    第一个博客密码忘记了,今天才来开通第二个博客,时间已经过去两年了,三年的硕士生涯,真的是感慨良多,最有收获的一段时光,莫过于在实验室一个人敲着代码了,研三来得到中科院深圳先进院,在这里开始了新的研究生 ...

  9. [Hapi.js] Up and running

    hapi is a rock solid server framework for Node.js. Its focus on modularity and configuration-over-co ...

  10. JSON 学习笔记

    学习使用json过程随笔: json数组格式 var employees = [ { "firstName":"Bill" , "lastName&q ...