MySQL 存取控制包含2个阶段:

  • 阶段1:服务器检查是否允许你连接。
  • 阶段2:假定你能连接,服务器检查你发出的每个请求。看你是否有足够的权限实施它。例如,如果你从数据库表中选择(select)行或从数据库删除表,服务器确定你对表有SELECT权限或对数据库有DROP权限。

参考 : 5.8. MySQL用户账户管理

1.权限查看

mysql> show grants for 'root'@'localhost' ;
+---------------------------------------------------------------------+
| Grants for root@localhost                                           |
+---------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION |
+---------------------------------------------------------------------+
1 row in set (0.06 sec)

2.权限设置
5.8.2. 向MySQL增加新用户账户

mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@'localhost'
    ->     IDENTIFIED BY 'some_pass';

mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@'%'
    ->     IDENTIFIED BY 'some_pass' WITH GRANT OPTION;
   其中两个账户有相同的用户名monty和密码some_pass。两个账户均为超级用户账户,具有完全的权限可以做任何事情。一个账户 ('monty'@'localhost')只用于从本机连接时。另一个账户('monty'@'%')可用于从其它主机连接。

mysql> GRANT RELOAD,PROCESS ON *.* TO 'admin'@'localhost';
该账户只用于从本机连接。授予了RELOAD和PROCESS管理权限。这些权限允许admin用户执行mysqladmin reloadmysqladmin refreshmysqladmin flush-xxx命令,以及mysqladmin processlist。未授予访问数据库的权限。你可以通过GRANT语句添加此类权限。

mysql> GRANT USAGE ON *.* TO 'dummy'@'localhost';
    一个账户有用户名dummy,没有密码。该账户只用于从本机连接。未授予权限。通过GRANT语句中的USAGE权限,你可以创建账户而不授予任何权限。它可以将所有全局权限设为'N'。假定你将在以后将具体权限授予该账户。

下面的例子创建3个账户,允许它们访问专用数据库。每个账户的用户名为custom,密码为obscure。


mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP
    ->     ON bankaccount.*
    ->     TO 'custom'@'localhost'
    ->     IDENTIFIED BY 'obscure';

mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP
    ->     ON expenses.*
    ->     TO 'custom'@'whitehouse.gov'
    ->     IDENTIFIED BY 'obscure';

mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP
    ->     ON customer.*
    ->     TO 'custom'@'server.domain'
    ->     IDENTIFIED BY 'obscure';

这3个账户可以用于:

·         第1个账户可以访问bankaccount数据库,但只能从本机访问。

·         第2个账户可以访问expenses数据库,但只能从主机whitehouse.gov访问。

·         第3个账户可以访问customer数据库,但只能从主机server.domain访问。

要想不用GRANT设置custom账户,使用INSERT语句直接修改 授权表:

5.8.3. 从MySQL删除用户账户

DROP USER user;

转自:http://www.blogjava.net/Skynet/archive/2008/10/01/232017.html

转载请注明出处:http://www.cnblogs.com/haochuang/ 8年IT工作经验,5年测试技术与管理,2年产品与项目管理,曾参与过云计算\云存储\车联网产品研发工作; 业余自媒体人,有技术类垂直微信公众号;如有招聘或求职方面需求,请Mail to uetest@qq.com ;或通过 QQ:363573922 微博:@念槐聚 联系;

【转】关于MySQL权限相关推荐

  1. mysql权限表整理

    一.MySQL权限简介 关于mysql的权限简单的理解就是mysql允许你做你全力以内的事情,不可以越界.比如只允许你执行select操作,那么你就不能执行update操作.只允许你从某台机器上连接m ...

  2. mysql权限的误操作的恢复

    mysql权限的误操作的恢复 原因:由于误操作,我把repl用户授予了所有权限,但删除了数据库中的其他用户及权限,因此repl用户虽然具有操作所有数据库的权限,但没有grant权限,所以若想授予其他用 ...

  3. mysql权限配置文件_MySQL权限管理、配置文件(三)

    一.MySQL权限管理 GRANT 权限 ON 授权范围 TO '用户名'@'允许的ip(所有%)' IDENTIFIED BY '用户密码'; 权限:参加下表,一般常用的是CREATE.DELETE ...

  4. mysql int 默认值 为ull_mysql的 约束 数据库设计 数据库 存储 触发器 mysql 权限问题...

    今天的目标: mysql的 约束 数据库设计 数据库 存储 触发器 mysql 权限问题 先讲约束: 要他唯一 不能重复 不能空值 : 什么是 mysql的约束: 对mysql 进行约束 2.2  默 ...

  5. 10、MySQL权限控制实现原理

    MySQL 权限表在数据库启动时载入内存,用户通过身份认证后,系统会在内存中进行相应权限的存取.当 MySQL 允许一个用户执行各种操作时,它将首先核实该用户向 MySQL 服务器发送的连接请求,然后 ...

  6. mysql 权限管理 目录

    mysql 权限管理介绍 mysql 权限管理 记录 mysql 权限管理 grant 命令 mysql 权限管理 revoke 回收权限 命令 mysql 权限管理 针对库 授权 db.* mysq ...

  7. mysql权限与安全

    一.MySQL权限系统通过两个阶段进行认证: (A) 对用户进行身份认证,IP地址和用户名联合, (B) 对合法用户赋予相应权限,权限表在数据库启动的时候载入内存中. 二.在权限的存取过程中,会用到& ...

  8. 说说mysql_说说MySQL权限 - andyqian的个人空间 - OSCHINA - 中文开源技术交流社区

    本文首发于个人微信公众号<andyqian>,期待你的关注- 前言 今天继续MySQL系列文章,讲讲MySQL权限相关的内容.我们都知道,在写系统的时候,都会有权限相关的服务,以达到权限控 ...

  9. mysql权限系统的工作原理_Mysql权限系统工作原理

    MySQL权限系统保证所有的用户可以严格地做他们假定被允许做的事情.当你连接一个MySQL服务器时, 你的身份由你从那连接的主机和你指定的用户名来决定,系统根据你的身份和你想做什么来授予权限. MyS ...

  10. 《MySQL DBA修炼之道》——1.4 MySQL权限

    本节书摘来自华章出版社<MySQL DBA修炼之道>一书中的第1章,第1.4节,作者:陈晓勇,更多章节内容可以访问云栖社区"华章计算机"公众号查看. 1.4 MySQL ...

最新文章

  1. 你确定你理解内存分配吗?
  2. C语言头文件组织与包含原则
  3. 系统页面升级系统中_中交出行通勤班线系统全新升级!页面亮点功能说明
  4. leetcode1119. 删去字符串中的元音 小学难度
  5. python环境变量配置_Python的安装、认识、配置环境变量以及helloworld打印的两种方式
  6. linux dd 清屏 of=/dev/mem,Linux系统简介分区基础命令(ADMIN01-2)(示例代码)
  7. tecplot360的宏命令
  8. 查看linux的iso文件名,查看ISO文件信息
  9. 架构一个可承受千万级访问量的动态扩展CMS
  10. think-cell丨Images图像丨教程
  11. Linux Ansys
  12. 02_LATTICE入门篇之新建项目
  13. 用 VS2005 类设计器设计类
  14. 如何让Bing快速收录你的网站?
  15. 在外包公司工作是什么样的体验?
  16. 如何将汉字写得又好又快
  17. JavaScript网页滚动距离
  18. Ubuntu 安装 postgresql12
  19. 递归算法和文件队列算法----实现多级文件夹的遍历,删除和复制操作
  20. LeeCode 5454 前缀和 + 暴力

热门文章

  1. java txt中文乱码,JAVA读取TXT文件 可解决中文乱码问题
  2. 关于Nginx的使用
  3. 大家是否也习惯将常用到的Python软件包放在一个头文件里?
  4. 2021全国大学生智能汽车竞赛中小学组国赛获奖名单
  5. 2021年春季学期-信号与系统-第六次作业参考答案-第十一小题
  6. 如何将模糊的图片变得清晰
  7. 使用小型变压器的线圈设计实验磁标初步实验
  8. 模为2的逆元是什么_逆元
  9. html百度地图跳动标注,trajectory.html
  10. oracle无法打开表的行集,Oracle错误ORA-22905:无法访问非嵌套表项中的行