一个用户可以不登录进Mysql 数据库,由两方面的因数决定

  1、你是谁:也就是mysql 数据库中记录的用户名和密码,在SQL Server数据库,中只要求说明你是谁就可以登录了,可是mysql 不是这样的它还要看第二条

  2、出生:你是京城皇宫里的张三,还是山沟沟里的张三,在mysql 看来你是两个不同的人。

  mysql 把这些重要信息记录在mysql.user 表中 (User,Password)-->你是谁  (Host)-->你是那里人(出生地)

  

  发现没有光是root 就有4 个哦。

-------------------------------------------------------------------------------------------------------------------------

我们最终的目的不只是为了连接上mysql 数据库更是为了可以对里面的数据进行操作。面要进行操作我们首先要取得相应的权限!用户的权限记录在如下几张表中

  1  mysql.user  它记录了用户的全局权限这个也是最大粒度的权限,这样说了也说不明白,还是来个例子

      

      root 用户的Select_Priv 为Y 说明它可以查询 mysql 任何一个数据库中的任何对象。这么强大的权限如果我只是想把用户的权限控制在某一个数据库中呢!

      这个粒度的权限就与mysql.db表对应

  2  mysql.db  它记录了哪个用户对哪个数据库有哪些权限,还是老样子直接上例子

      

     看见没有User 列没有记录root 用户哦!那么问题就来了,为毛root 可以查询任何数据库中的表呢?这个里因为记录再了mysql.user表里面,在mysql.user 表中的

         Select_Priv = Y  是针对所有数据库的,也就是说当root 运行一查询时,首先去看一下mysql.user 看有没有运行这一查询的权限,如果有就执行,如果没有就去        mysq.db 表中看一下有没有这个权限。看到了没有权限的粒度每小一级就会多一次判断!这可以会影响性能。

  3  mysql.tables_priv 上面说了这么多我想这个就不用多说了,看名字就知道了它是表一级的控制。

  4  mysql.columns_priv 列级别的粒度控制

  5  mysql.proc_priv      存储过程与函数级别的粒度控制

MySQL 用户登录与操作执行的更多相关文章

  1. linux下MySQL安装登录及操作

    linux下MySQL安装登录及操作 二.安装Mysql 1.下载MySQL的安装文件 安装MySQL需要下面两个文件: MySQL-server-4.0.16-0.i386.rpm MySQL-cl ...

  2. 通过登入IP记录Linux所有用户登录所操作的日志

    通过登入IP记录Linux所有用户登录所操作的日志 对于Linux用户操作记录一般通过命令history来查看历史记录,但是如果在由于误操作而删除了重要的数据的情况下,history命令就不会有什么作 ...

  3. MySql 用户 及权限操作

    bin/msyql -h host -u user -p    bin/mysql -u mysql -p  本地登录 如无密码按回车直接进入mySql   bin/mysqladmin -u roo ...

  4. 【Java】系统漏洞:关于用户登录后操作的注意事项

    项目背景: SpringMVC + Mybatis  + MySql数据库(javaWeb项目开发) 相关模块:登录,个人详细信息修改,订单详情查询 相关漏洞介绍: 1.登录的验证码:登录的验证码一定 ...

  5. MySQL 用户登录密码和远程登录权限问题

    1.mysql数据库,忘记root用户登录密码. 解决如下: a.重置密码 #/etc/init.d/mysqld stop #mysqld_safe --user=mysql --skip-gran ...

  6. Linux 记录所有用户登录和操作的详细日志

    1.起因 最近Linux服务器上一些文件呗篡改,想追查已经查不到记录了,所以得想个办法记录下所有用户的操作记录. 一般大家通常会采用history来记录,但是history有个缺陷就是默认是1000行 ...

  7. mysql 用户/密码/权限操作

    由于最近使用mysql遇到了修改用户密码的问题,所以一块学习了一下关于用户的相关操作: 1. 创建新账户 CREATE USER 'jeffrey'@'localhost'; 2. 账户设置密码 #当 ...

  8. tp5的RBAC插件及其使用很方便的管理用户登录及操作权限

    tp5-rbac 本扩展包是tp5的rbac包,使用了部分tp5的特性实现了关系型数据库中特殊数据结构的处理. 安装方法 先安装composer如果不知道怎么安装使用composer请自行百度. 打开 ...

  9. Centos记录所有用户登录和操作的详细日志

    1.起因 最近Linux服务器上一些文件呗篡改,想追查已经查不到记录了,所以得想个办法记录下所有用户的操作记录. 一般大家通常会采用history来记录,但是history有个缺陷就是默认是1000行 ...

随机推荐

  1. Quartz 2D - 图形上下文(Graphics Contexts)

    一个Graphics Context表示一个绘制目标.它包含绘制系统用于完成绘制指令的绘制参数和设备相关信息.Graphics Context定义了基本的绘制属性,如颜色.裁减区域.线条宽度和样式信息 ...

  2. C#调用短信接口(通过简单的工厂模式整合多个短信平台)

    using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Net ...

  3. css background-position (图片裁取)

    语法:background-position : length || length background-position : position || position 取值:length  : 百分 ...

  4. 获取checkbox 的选中状态的id、checkbox的一些操作

    var id_array=new Array(); $('input[name="id"]:checked').each(function(){ id_array.push($(t ...

  5. keyDown keyPress keyUp 事件的区别

    keyDown keyPress keyUp  事件的区别 一 触发顺序 显而易见,事件发生的顺序是: keydown --> keypress --> keyup 当按住一个键一段时间后 ...

  6. hdu 4634 Swipe Bo bfs+状态压缩

    题目链接 状态压缩记录当前拿到了哪些钥匙, 然后暴力搜索. 搞了好几个小时, 一开始也不知道哪里错了, 最后A了也不知道一开始哪里有问题. #include <iostream> #inc ...

  7. javascript学习笔记(1) 简单html语法

    <html> <head><meta http-equiv="content-type" content="text/html" ...

  8. Task和backStack(本篇章核心)

     对Task和backStack的认识过程 1.由demo测试得到的关系图: 1.一个task中可以有多个app的Activity, 由于一个app可以对应一个或多个process, 2.所以一个ta ...

  9. PADS封装

    CAE 是原理图符号DECAL 是PCB封装PART 是将 CAE和 DECAL结合映射起来.比如PART包含了CAE和DECAL的管腿对应关系.CAE的1号腿,不一定对应DECAL的1号腿的.Pin ...

  10. Delphi中TFlowPanel实现滚动条效果

    由于TFlowPanel中没有设置滚动条的相关属性.所以我们只好另辟溪径.再加一个tscrollbox来实现. 具体操作如下: 1,先添加一个Tscrollbox,设置其align为alclient. ...