zoukankan      html  css  js  c++  java
  • mysql(2)权限管理

    1.初始化完成之后的用户:只有一个root用户,5.6及之前的版本是没有密码的,5.7会产生随机密码,在初始化时可以看到,在配置日志文件中也可以查看。

    2.用户的权限管理步骤

    1)检查用户的-hip和用户名是否被允许

    2)查看mysql.user表是否存在该用户,这里没有权限设置,默认对所有的库都有权限

    3)然后查看mysql.db表中该用户对某些库的权限

    4)然后查看mysql.table_priv对于某个库的某张表的权限查看

    5)然后查看mysql.columns_priv对某张表的某列的查看权限

    查看命令: 例如查看user表描述,进入mysql ,语句:  use  mysql ; desc user;

    查看user表中root的内容,select *  from user where  user="root"  G     G表示把结果集竖起来便于查看;

    如下authentication_String 就是我们的密码,但是是同password函数处理过的,是不可逆的,所以是安全的;

    3.常用权限

    sql语句:select, insert ,update, delete , index等

    存储过程: create routine,  alter routine ,execute ,irigger

    管理权限:super, reload ,  show database ,shutdown,   grant  option等

    所有权限可以查看:https://dev.mysql.com/doc/refman/8.0/en/privileges-provided.html

    4.添加用户

    create  user    '用户名'@'ip地址'  identified   by  '密码';

    grant  privileges(权限类型) db.table(数据库表名,所有的可以用*.*) to '用户名'@'ip地址'  identified   by  '密码';//给予权限,在没有该用户的前提下创建用户

    insert  into   mysql.user(host,user,password,[priviligelist]) values(地址,用户名,密码,权限)

    5.删除用户

    drop  user  '用户名'@'ip地址' ;

    6.查看权限

    show  grants  for  '用户名'@'ip地址' ;//查看权限信息

    7.授予权限

    privileges:select,insert,update,delete,create,drop,references,index,alter,create temporary tables,lock tables,execute,create view,show view,create routine,alter routine,event,trigger

    grant  privileges(权限类型).,.,. db.table(数据库表名,所有的可以用*.*表示所有的库,库名.*表示某库下的所有表,该库不能与java连接,连接后需要关闭才能设置) to '用户名'@'ip地址'(所有的ip用‘%’)  identified   by  '密码'  with  grant  option;//授予权限以及grant权限

    revoke  privileges(权限类型).,.,. db.table(数据库表名,所有的可以用*.*) to '用户名'@'ip地址'  identified   by  '密码'  with  grant  option;

    grant all PRIVILEGES on test_db.* to ’root’@'ip'  identified by '密码';//all PRIVILEGES  所以的PRIVILEGES 权限;

    revoke all  privileges  ,grant  option  from '用户名'@'ip地址' ;//收回所有的权限

    grant select(属性) on db.table  to  ’root’@'ip'  identified by '密码';//grant 作用在表中的列上

    备注:

    问题1

    在linux上设置ip之后有可能导致jdbc无法连接上,所以将ip改为%  或者一个波段。

    问题2

    在设置require x509  或者ssl之后 没有认证mysql5.6是无法登陆的,--ssl =false没作用了;

  • 相关阅读:
    Nginx作为缓存服务
    Nginx作为代理服务
    ZipUtils zip压缩实现
    getman九桃小说解析油猴脚本
    maven添加代理加速jar包下载
    ffmpeg MP3 flv 视频转mp3
    ActiveMQ配置用户认证信息
    JS实现HTML标签转义及反转义
    删除registry镜像数据,以centos为例
    启动一个带登录账号密码的registry容器
  • 原文地址:https://www.cnblogs.com/gg128/p/9457823.html
Copyright © 2011-2022 走看看