MySQL 用户管理与权限管理

-- 操作环境
mysql> show variables like 'version';  
+---------------+--------+
| Variable_name | Value  |
+---------------+--------+
| version       | 5.6.25 |
+---------------+--------+
1 row in set (0.04 sec)

背景知识补充:
user   表中 host 列的值的意义
%            匹配所有主机
localhost    localhost 不会被解析成 IP 地址,直接通过 UNIXsocket 连接
127.0.0.1    会通过 TCP/IP 协议连接,并且只能在本机访问;
::1 ::1      就是兼容支持 ipv6 的,表示同 ipv4 的 127.0.0.1

一: 用户管理

1. 查看用户
mysql> select host,user,password from mysql.user where user like 'andy';

2. 创建数据库用户
--指定密码创建新用户,%表示任意,即 andy02 可以从任意主机访问数据库  
mysql> create user 'andy02'@'%' identified by 'oracle'; 
Query OK, 0 rows affected (0.03 sec)
 
3. 用户改密码
mysql> set password for andy02=password('mysql');
mysql> flush privileges;

4.删除用户
--查看当前系统中已存在的用户  
mysql> select user,host,Password from mysql.user;  
--使用drop user命令删除用户  
mysql> drop user 'andy02'@'%';    注意:如果不指定 @'%' ,默认缺省,则删除的是 '%' 。
mysql> select user,host,Password from mysql.user where user like 'andy%'; 
Empty set (0.00 sec)

5. 重命名帐户
--rename user命令  
mysql> rename user 'andy02'@'%' to 'andy01'@'%'; 
Query OK, 0 rows affected (0.00 sec)
--检查  
mysql> select user,host,Password from mysql.user where user like 'andy%';

二:权限管理

注意:mysql的权限相对于oracle而言,相对简单,而且也没有涉及到角色方面的定义与配置

--grant命令语法

1. 权限种类  
(这里直接查看,root账户所有的权限)

mysql> select * from mysql.user where user='root' and host='%'\G;
*************************** 1. row ***************************
                  Host: %
                  User: root
              Password: *2447D497B9A6A15F2776055CB2D1E9F86758182F
           Select_priv: Y
           Insert_priv: Y
           Update_priv: Y
           Delete_priv: Y
           Create_priv: Y
             Drop_priv: Y
           Reload_priv: Y
         Shutdown_priv: Y
          Process_priv: Y
             File_priv: Y
            Grant_priv: Y
       References_priv: Y
            Index_priv: Y
            Alter_priv: Y
          Show_db_priv: Y
            Super_priv: Y
 Create_tmp_table_priv: Y
      Lock_tables_priv: Y
          Execute_priv: Y
       Repl_slave_priv: Y
      Repl_client_priv: Y
      Create_view_priv: Y
        Show_view_priv: Y
   Create_routine_priv: Y
    Alter_routine_priv: Y
      Create_user_priv: Y
            Event_priv: Y
          Trigger_priv: Y
Create_tablespace_priv: Y
              ssl_type: 
            ssl_cipher: 
           x509_issuer: 
          x509_subject: 
         max_questions: 0
           max_updates: 0
       max_connections: 0
  max_user_connections: 0
                plugin: mysql_native_password
 authentication_string: 
      password_expired: N
1 row in set (0.00 sec)

2. 权限存放

MySQL 服务器通过 MySQL 权限表来控制用户对数据库的访问,MySQL 权限表存放在 mysql 数据库里,由 mysql_install_db 脚本初
始化。这些 MySQL 权限表分别 user,db,table_priv,columns_priv 和 host。

user 权限表:记录允许连接到服务器的用户帐号信息,里面的权限是全局级的。
db 权限表:记录各个帐号在各个数据库上的操作权限。
table_priv 权限表:记录数据表级的操作权限。
columns_priv 权限表:记录数据列级的操作权限。
host 权限表:配合 db 权限表对给定主机上数据库级操作权限作更细致的控制。这个权限表不受 GRANT 和 REVOKE 语句的影响。

3. 权限范围 priv_level: 
    *
  | *.*
  | db_name.*
  | db_name.tbl_name
  | tbl_name
  | db_name.routine_name

4. 授权
mysql>grant all privileges on *.* to 'andy01'@'%';    (--WITH GRANT OPTION 是否传递,默认为不传递)
mysql>flush privileges;

5. 查看当前用户的权限
mysql> show grants;

6. 查看指定用户的权限

mysql> show grants for 'andy01'@'%';

-- revoke 收回权限

撤销与授权的权限方式基本类似,这里不做讨论。

MySQL 用户管理与权限管理的更多相关文章

  1. MySQL数据库(6)_用户操作与权限管理、视图、存储过程、触发器、基本函数

    用户操作与权限管理 MySQL用户操作 创建用户 方法一: CREATE USER语句创建 CREATE USER "用户名"@"IP地址" IDENTIFIE ...

  2. MySQL数据分析-(9)库操作补充:用户管理和权限管理

    大家好,我是jacky,很高兴继续跟大家学习MySQL数据分析实战,本节课的主题是用户管理和权限管理: 在分享之前,jacky在不厌其烦的强调一下:学习任何一门学科和技能,最重要的是捋清逻辑,我们要知 ...

  3. (大数据工程师学习路径)第一步 Linux 基础入门----用户及文件权限管理

    用户及文件权限管理 实验介绍 1.Linux 中创建.删除用户,及用户组等操作. 2.Linux 中的文件权限设置. 一.Linux 用户管理 Linux 是一个可以实现多用户登陆的操作系统,比如“李 ...

  4. Linux用户及文件权限管理

    Linux用户及文件权限管理

  5. 用户管理_组管理_权限管理.ziw

    2017年1月10日, 星期二 用户管理_组管理_权限管理 用户管理: useradd, userdel, usermod, passwd, chsh, chfn, finger, id, chage ...

  6. 实验楼学习linux第一章第三节用户及文件权限管理

    用户及文件权限管理 常用命令 查看用户 whoami 创建用户 sudo adduser 用户名 切换账户 su 用户名 删除账户 sudo deluser 用户名 --remove-home 查看用 ...

  7. WordPress用户角色及其权限管理编辑插件:User Role Editor汉化版

    如果Wordpress默认的用户角色及权限不能满足您的需求,又觉得修改代码编辑用户权限太麻烦.那不妨试试User Role Editor,Wordpress用户角色及其权限管理编辑插件. User R ...

  8. solaris用户与文件权限管理

    此文章已于 20:45:28 2015/3/22 重新发布到 zhuxuekui3 solaris用户与文件权限管理1 类别    「网站分类」Oracle 一.用户与用户组管理 三种用户:超级用户. ...

  9. NopCommerce源代码分析之用户验证和权限管理

    目录 1.  介绍 2.  UML 2.1  实体类UML图 2.2  业务相关UML图 3.  核心代码分析 3.1  实体类源代码 3.2  业务相关源代码 3.3  相关控制器源代码 3.4  ...

随机推荐

  1. modelsim-altera

    一. 1.  Go to the menu Tools > Options.  2.  In the “General” category, select “EDA Tool Options”. ...

  2. 【WPF学习笔记】之如何通过后台C#代码添加(增/删/改按钮)实现对SQLServer数据库数据的更改

    首先,需要连接SQLServer数据库的服务器名称server.数据库名database.数据库用户名uid以及密码pwd,如下图: 然后需要以下数据库SQL代码段,还有一个myHelper.cs代码 ...

  3. 13-redis主从复制

    一:redis主从复制 (1)配置要求 一台主maste 二台从slave (2)架构图 (3)配置流程 1:分配拷贝2份redis.conf 分别命名为 redis6380.conf redis63 ...

  4. 目标检测之人头检测(HaarLike Adaboost)---高密度环境下行人检测和统计

    实验程序视频 下载 1 问题描述 高密度环境下的行人统计一直没有得到很好的解决,主要原因是对高密度人群中的行人检测和跟踪是一个很难的问题,如下图所示环境,存在的困难包括: 检测方面: 由于人群整体处于 ...

  5. NERO8.0刻录系统光盘

    正常启动NREO,点击NERO 8.0左下角图标(启动NERO应用程序和工具),选NERO Express Essentials,在左边的几个选项中选择“映像.项目.复制”,右边选“光盘映像或保存的项 ...

  6. EasyRTMP+EasyDSS实现一套完整的紧急视频回传直播与存储回放方案

    需求来源 紧急视频回传云端:即拍即传.云端存储.紧急录像.云拍云录!这些需求现在可能对于我们来说比较远,大部分也是在行业中才会用到,但相信在不就的将来肯定会落地到每个人的手中,因为这是一个自我保护.自 ...

  7. 自己珍藏的数据库SQL基础练习题答案

    一,基本表的定义与删除. 题1: 用SQL语句创建如下三张表:学生(Student),课程表(Course),和学生选课表(SC),这三张表的结构如表1-1到表1-3所示. 表1-1 Student表 ...

  8. 【题解】HNOI2013比赛

    [题解][P3230 HNOI2013]比赛 将得分的序列化成样例给的那种表格,发现一行和一列是同时确定的.这个表格之前是正方形的,后来长宽都减去一,还是正方形.问题形式是递归的.这就启示我们可以把这 ...

  9. 题解 P1387 【最大正方形】

    传送门 搞不清楚为什么这一题要DP . . . . . . 思路: \(n\le100\),考虑暴力. 要求一大块区间内都是1,考虑前缀和. 在矩阵中求一个符合条件的子矩阵,考虑\(n^3\)的&qu ...

  10. 查找SAP 系统Parameter ID 4种方法

    转自 http://blog.csdn.net/jy00873757/article/details/8517426 ***程序RPR_ABAP_SOURCE_SCAN  一.用F1,直接可以看到这个 ...