• Java基础91 mysql的用户权限设置问题


    1、概述                          

        1)MySQL数据库中root用户具有最高的权限(超级用户),可以对任何数据库,任何表进行操作。

        2)权限账户,只拥有部分权限(CRUD) 。例如:只能操作某个数据库的某张表等等。

    2、mysql的用户权限设置  

      2.1、连接数据库

    mysql> use mysql; -- 连接mysql数据库

      2.2、查看所有用户

    mysql> select host,user,password from user;

      2.3、创建用户

    mysql> create user dshore identified by '123456';  -- identified by 会将纯文本的密码加密后,作为散列值存储。

      2.4、修改指定用户的名称

    mysql> rename user dshore to shore;

      2.5、删除指定用户

    mysql> drop user shore;

      2.6、修改指定用户密码

    mysql> update user set password = password('111222') where user = 'shore';

    注意:修改完密码后,必须重启MySQL的服务,否则无法登陆该用户。

      2.7、将指定用户的密码用MD5加密函数(单向加密)

    mysql> select password('shore');

      2.8、查看指定用户的权限

    mysql> show grants for shore;

      2.9、对指定用户授权

    1 mysql> grant select on *.* to shore; -- 授予shore用户查看所有数据库及其对应数据库下的所有表的权限
    2 mysql> grant select on school.* to shore; -- 授予shore用户查看school数据库下的所有表的权限
    3 mysql> grant select on school.student to shore;  -- 授予shore用户只能查看school数据库下的student表的权限

      2.10、回收指定用户的权限

    mysql> revoke  select on *.* to shore; -- 回收shore用户查看所有数据库及其对应数据库下的所有表的查看权限
    mysql> revoke  select on school.* to shore; -- 回收shore用户查看school数据库下的所有表的权限
    mysql> revoke  select on school.student to shore; -- 回收shore用户查看school数据库下的student表的权限

    上面的命令也可使用多个权限同时赋予和回收,权限之间使用逗号分隔
     grant/revoke selectupdatedeleteinsert  on *.*  to  shore;

    1 grant all on *.* to 'shore'@'localhost'; -- 这时,shore用户的权限相当于root 用户,没有实际意义,不建议这样授权。( @'localhost' 指本地操作的权限 )
    2 grant all on school.* to 'shore'@'localhost'; -- 只授予对school数据库的所有操作权限
    3 revoke all on *.* from 'shore'@'localhost'; -- 回收shore用户的所有权限

      2.11、user表中host列的值的意义

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

    原创作者:DSHORE

    作者主页:http://www.cnblogs.com/dshore123/

    原文出自:https://www.cnblogs.com/dshore123/p/10575681.html

    欢迎转载,转载务必说明出处。(如果本文对您有帮助,可以点击一下右下角的 推荐,或评论,谢谢!

  • 相关阅读:
    lea
    DIV指令
    html基础
    浮点计算结果误差,以及解决方法
    java的threadLocal类
    java多线程基础总结
    sql反模式读书笔记 (持续更新)
    pdb 调试初步
    面向对象设计原则与总结 (持续更新)
    @servcie注解基本用法
  • 原文地址:https://www.cnblogs.com/dshore123/p/10575681.html
Copyright © 2020-2023  润新知