zoukankan      html  css  js  c++  java
  • mysql5.7 & 8 用户权限管理

    前言

    mysql 读写性能相对中规中矩,适合大多数情况下使用。本博文记录一下 mysql 关于用户相关的操作

    准备工作

    通过 mysql 的默认账号 root 来登录 mysql, mysql默认root账号没有密码

    mysql -u root -h 127.0.01 -p -P3306
    

    查询当前创建用户

    方式一

    mysql> select host, user, password from mysql.user;              # 5.7版本之前的
    mysql> select host, user, authentication_string from mysql.user;  # 5.7版本之后的,包括5.7
    

    方式二(推介)

    mysql> select distinct concat('User: ''',user,'''@''',host,''';') as query from mysql.user;
    

    查询用户的权限

    all表示所有权限
    select表示只查权限
    update表示只改权限
    delete表示只删权限等。

    查询具体某个用户的权限(方法一)(推荐)

    mysql> show grants for "user"@"host";  # "user"@"host" 填写对应用户信息
    

    查询具体某个用户的权限(方法二)

    查询root用户的权限

    mysql> select * from mysql.user where user='root'G;
    

    创建新用户

    新创建的用户,默认情况下是没有任何权限的

    mysql> create user "用户名"@"IP地址" identified by "密码";
    

    案例

    # 创建用户【shuiche】密码为: 123456,host值默认为%。
    mysql> create user "shuiche" identified by "123456";  
    
    # 创建用户【shuiche】密码为: 123456,手动指定host值为%。
    mysql> create user "shuiche"@"%" identified by "123456";  
    

    mysql.user表中Host为%的含义. Host列指定了允许用户登录所使用的IP,比如user=root Host=192.168.1.1。. 这里的意思就是说root用户只能通过192.168.1.1的客户端去访问。. 而%是个通配符,如果Host=192.168.1.%,那么就表示只要是IP地址前缀为“192.168.1.”的客户端都可以连接。. 如果Host=%,表示所有IP都有连接权限。.

    给用户授权

    常用的权限类型有以下几种:

    all privileges:所有权限。
    select:读取权限。
    create:创建权限。
    delete:删除权限。
    update:更新权限。
    drop:删除数据库、数据表权限。

    允许访问所有数据库下的所有表

    mysql> grant 权限类型 on 数据库名.表名 to '用户名'@'ip地址' ;
    

    允许访问指定数据库(test)下的所有表

    mysql> grant all privileges on test.* to '用户名'@'指定ip' ;
    

    允许访问指定数据库下的指定表(test.test)

    mysql> grant all privileges on test.test to '用户名'@'指定ip' ;
    

    删除用户权限(使用root用户操作)

    mysql> revoke select on test.* from "shuiche"@"%";
    
    mysql> revoke all on tornado.* from "shuiche"@"%";
    

    删除用户

    # 方法一
    mysql> drop user "haidon"@"%";  
    
    # 方法二
    mysql> delete from mysql.user where user="haidon";
    

    刷新权限(使权限立即生效) (重要)

    mysql> flush privileges;
    
    博客中所涉及到的图片都有版权,请谨慎使用
  • 相关阅读:
    particcles.js in 安卓WebView
    PDF.js 主页样式以及获取流
    Oracle授权A中的表给B
    安卓Response 获取body的正确方式
    android.util.Base64 和 org.apache.commons.codec.binary.Base64
    DAY62-前端入门-javascript(九)jQurey高级
    DAY61-前端入门-javascript(八)jQurey
    DAY60-前端入门-javascript(七)JS动画 | JS盒模型 | DOM | BOM
    DAY59-前端入门-javascript(六)JS事件
    DAY58-前端入门-javascript(五)JS常用类
  • 原文地址:https://www.cnblogs.com/shuiche/p/14777803.html
Copyright © 2011-2022 走看看