总的来说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表,来完成创建任务;这种方式本文不

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

  1. CREATE USER user_specification [, user_specification] ...
  2.  
  3. user_specification:
  4. user [ identified_option ]
  5.  
  6. auth_option: {
  7. IDENTIFIED BY 'auth_string'
  8. | IDENTIFIED BY PASSWORD 'hash_string'
  9. | IDENTIFIED WITH auth_plugin
  10. | IDENTIFIED WITH auth_plugin AS 'hash_string'
  11. }

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

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

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

  1. GRANT
  2. priv_type [(column_list)]
  3. [, priv_type [(column_list)]] ...
  4. ON [object_type] priv_level
  5. TO user_specification [, user_specification] ...
  6. [REQUIRE {NONE | tsl_option [[AND] tsl_option] ...}]
  7. [WITH {GRANT OPTION | resource_option} ...]
  8.  
  9. GRANT PROXY ON user_specification
  10. TO user_specification [, user_specification] ...
  11. [WITH GRANT OPTION]
  12.  
  13. object_type: {
  14. TABLE
  15. | FUNCTION
  16. | PROCEDURE
  17. }
  18.  
  19. priv_level: {
  20. *
  21. | *.*
  22. | db_name.*
  23. | db_name.tbl_name
  24. | tbl_name
  25. | db_name.routine_name
  26. }
  27.  
  28. user_specification:
  29. user [ auth_option ]
  30.  
  31. auth_option: {
  32. IDENTIFIED BY 'auth_string'
  33. | IDENTIFIED BY PASSWORD 'hash_string'
  34. | IDENTIFIED WITH auth_plugin
  35. | IDENTIFIED WITH auth_plugin AS 'hash_string'
  36. }
  37.  
  38. tsl_option: {
  39. SSL
  40. | X509
  41. | CIPHER 'cipher'
  42. | ISSUER 'issuer'
  43. | SUBJECT 'subject'
  44. }
  45.  
  46. resource_option: {
  47. | MAX_QUERIES_PER_HOUR count
  48. | MAX_UPDATES_PER_HOUR count
  49. | MAX_CONNECTIONS_PER_HOUR count
  50. | MAX_USER_CONNECTIONS count
  51. }

授予一个用户所有权限:

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

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

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

  1. grant all on *.* to dumper@'127.0.0.1';
  2. grant grant option on *.* to dumper@'127.0.0.1';
  3. 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. FATAL:NO bootable medium found!System halted.

    问题描述:致命错误,没有可引导的媒体.系统挂起.以下是在网上查的: 1:检查硬盘的类型,ide或sata接口是否在0,0或是在1,0. 2:光驱是否选择iso文件. 3:iso文件是否损坏4:virt ...

  2. Oracle instr用法

    1:实现indexOf功能,.从第1个字符开始,搜索第1次出现子串的位置 ,) as i from dual; select instr('oracle','or') as i from dual; ...

  3. Uubntu14.04 LST安装NodeJS

    1:从官网下载node.js源码http://nodejs.org/download/ 当前最新版为node-v0.10.33 2:安装 $ tar zxvf node-v0.10.33.tar.gz ...

  4. keil c51中C程序的启动过程

    汇编是从org 0000h开始启动,那么keil c51是如何启动main()函数的?keil c51有一个启动程序startup.a51,它总是和c程序一起编译和链接.下面看看它和main()函数是 ...

  5. 福建省队集训被虐记——DAY4

    啊啊啊啊啊啊第四天考的是我最不擅长的图论--整个人都斯巴达了 //另外不得不吐槽下午的上课讲的都是网络流--难道是出题人觉得图论里除了网络流以外的其他算法都没有人权图样图森破? 愚蠢的算法(clums ...

  6. QQ聊天界面的布局和设计(IOS篇)-第一季

    我写的源文件整个工程会再第二季中发上来~,存在百度网盘, 感兴趣的童鞋, 可以关注我的博客更新,到时自己去下载~.喵~~~ QQChat Layout - 第一季 一.准备工作 1.将假数据messa ...

  7. Only2 Labs — A Visual Design Studio

    Only2 Labs - A Visual Design Studio 设计合作 对您目前的设计很不满意?或是急缺一个设计供应商?您的团队最近做的项目需要指导?Only2都很乐意为您解困惑. 或者,你 ...

  8. leetcode先刷_Unique Paths II

    那么上述问题,假设这个矩阵堵塞障碍,不能在若干组合前面所用的方法,因为这么多的位置实际上是没有办法的事儿. 还有剩下的唯一合理的解决方案dp该.与最低要求,并且等,从右下角以前突起,对于位置(i, j ...

  9. Oracle INTERVAL DAY TO SECOND数据类型

    INTERVAL DAY TO SECOND数据类型 Oracle语法: INTERVAL '{ integer | integer time_expr | time_expr }' { { DAY ...

  10. linux下使用非root账号安装zabbix-client

    linux下使用非root账号安装zabbix-client使用非root账号rusky登录:[rusky@testServer]#tar zxvf zabbix-2.4.5.tar.gz #cd z ...