• 四、mysql用户、权限管理


    一、数据库用户定义

    1、作用

    登录,管理数据库逻辑对象

    2、用户的定义方式

    用户名@'用户所在的位置'
    类似于白名单支持的方式
    ywx@'10.0.0.%'    #ywx用户在10.0.0.0/24网段可以访问数据库
    ywx@'%'           #ywx用户在所有网段都可以访问数据库
    ywx@'10.0.0.200'  #只有在主机10.0.0.200上的ywx用户才嫩访问数据库
    ywx@'localhost'   #数据库本地的ywx用户才能访问数据库
    ywx@'db01'        #ip地址解析为db01的主机上的ywx用户可以访问数据库
    ywxs@'10.0.0.5%'  #10.0.0.50-59主机上ywx用户可以访问数据库
    ywx@'10.0.0.0/255.255.254.0' #ywx用户在10.0.0.0/255.255.254.0上可以访问数据库

    3、用户的管理操作:

    新增用户:
    mysql> create userywx@'10.0.0.%' identified by '123';
    查看用户:
    mysql> desc mysql.user;    ---->  authentication_string
    #desc查看表结构(列信息)
    mysql> select user ,host ,authentication_string from mysql.user
    修改用户密码:
    mysql> alter user ywx@'10.0.0.%' identified by '456';
    输出用户:
    mysql> drop user ywx@'10.0.0.%';

    二、用户的权限分配

    1、常用权限介绍:

    mysql数据库的所有权限:
    SELECT,INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE
    ALL : 以上所有权限,一般是普通管理员拥有的
    with grant option:超级管理员才具备的,给别的用户授权的功能

    2、给用户分配权限的管理操作:

    mysql> grant all on wordpress.* to wordpress@'10.0.0.%' identified  by '123';

    3、权限作用范围:

    *.*                  ---->管理员用户(对应的所有库所有表)
    wordpress.*          ---->开发和应用用户(对应wordpress库的所有表)
    wordpress.t1         ---->不常用(对应wordpress库的t1表)

    实验案例

    需求1:windows机器的navicat登录到linux中的MySQL,管理员用户。

     
    mysql>grant all on *.* to root@'192.168.32.%' identified by '123456';

    需求2:创建一个应用用户app用户,能从windows上登录mysql,并能操作app库

     
    mysql>create user app@'192.168.32.%' identified by '123456';
    mysql>grant select,update,delete,insert on app.* to app@'192.168.32.%';
    #mysql8.0中的grant命令新特性
    或
    mysql>grant select,update,delete,insert on app.* to app@'192.168.32.%' identified by '123456';

    提示:8.0在grant命令添加新特性

    建用户和授权分开了
    grant 不再支持自动创建用户了,不支持改密码
    授权之前,必须要提前创建用户。

    开发人员用户授权流程

    1.需要什么权限
    2.对哪些库操作
    3.在哪些主机上远程连接数据库
    4.密码要求

    4、查看用户的授权

    mysql>show grants for ywx@'192.168.32.202';

    5、回收权限

    mysql>revoke delete on wordpress.* from ywx@'192.168.32.201';
    I have a dream so I study hard!!!
  • 相关阅读:
    接口
    多态
    static的用法
    Person类中多个构造方法和测试
    曹操外卖实现功能
    曹操外卖数据表设计
    java中 try catch finally和return联合使用时,代码执行顺序的小细节
    GenerationType四中类型
    spring boot
    VMware修改为静态ip
  • 原文地址:https://www.cnblogs.com/yaokaka/p/13924516.html
Copyright © 2020-2023  润新知