zoukankan      html  css  js  c++  java
  • MySQL创建用户并修改权限

    创建用户

    1. 登入MysQL命令行
    mysql -u root -p
    
    1. 创建新用户
    # 在MySQL命令行输入以下语句(需要先替换参数)
    # ${user}表示用户名
    # ${host}表示允许登录的IP地址,输入'127.0.0.1'表示只能在本机登录,输入'%'表示不限制
    # ${password}表示密码
    # 例:CREATE USER 'reader'@'%' IDENTIFIED BY '123456';
    CREATE USER '${user}'@'${host}' IDENTIFIED BY '${password}';
    
    1. 给用户授权
    # 在MySQL命令行输入以下语句(需要先替换参数)
    # SELECT,SHOW VIEW:表示只读权限。ALL表示全部权限。其他权限参考:https://www.jianshu.com/p/dedb0467e3e2
    # ${database_name}表示数据库名称,输入'*.*'表示全部。
    # 例:GRANT SELECT,SHOW VIEW ON mall.* TO 'reader'@'%' IDENTIFIED BY '123456';
    GRANT SELECT,SHOW VIEW ON ${database_name}.* TO '${user}'@'${host}' IDENTIFIED BY '${password}';
    
    # 刷新权限
    FLUSH PRIVILEGES;
    

    权限相关

    查看

    • 查看当前登录用户的权限
    SHOW GRANTS;
    
    • 查看指定用户的权限
    SHOW GRANTS FOR 'example_user';
    

    输出如下:

    +-----------------------------------------------------+
    | Grants for reader@%                                 |
    +-----------------------------------------------------+
    | GRANT USAGE ON *.* TO 'reader'@'%'                  |
    | GRANT SELECT, SHOW VIEW ON `mall`.* TO 'reader'@'%' |
    +-----------------------------------------------------+
    

    授予权限

    • 授予权限给指定用户
    GRANT ALL PRIVILEGES ON example_database.* TO 'example_user'@'%';
    
    • 授予权限给指定用户,且该用户可以把权限授予其他用户
    GRANT ALL PRIVILEGES ON example_database.* TO 'example_user'@'%' WITH GRANT OPTION;
    
    • 授予只读权限
    GRANT SELECT,SHOW VIEW ON example_database TO 'example_user'@'%';
    
    • 授权指定用户的指定数据库(表)的权限
    GRANT SELECT ON example_database TO 'example_user'@'%';
    GRANT INSERT ON example_database.example_table TO 'example_user'@'%';
    

    移除权限

    • 移除权限
    REVOKE ALL ON example_database FROM 'example_user'@'%';
    
    • 移除全部权限
    # 1. 列出该用户的权限
    SHOW GRANTS FOR 'example_user';
    	+-----------------------------------------------------+
    	| Grants for reader@%                                 |
    	+-----------------------------------------------------+
    	| GRANT USAGE ON *.* TO 'reader'@'%'                  |
    	| GRANT SELECT, SHOW VIEW ON `mall`.* TO 'reader'@'%' |
    	+-----------------------------------------------------+
    
    # 2. 复制权限到命令行,把'GRANT'改为'REVOKE',把'TO'改为'FROM':
    REVOKE SELECT, SHOW VIEW ON `mall`.* FROM 'reader'@'%';
    
    # 3. 刷新权限
    FLUSH PRIVILEGES;
    
  • 相关阅读:
    基于角色的权限设计(一)
    js图片懒加载插件封装
    项目中必须知道有关css和html的常识
    设为主页代码及添加到收藏夹代码大全
    JS弹出层、弹窗效果+拖曳功能
    算数验证码
    js基础知识
    基于角色的权限设计(二)
    sqlserver数据类型char和nchar,varchar和nvarchar,text和ntext的用法以及区别?
    经典页面布局,任何分辨率下,全屏显示
  • 原文地址:https://www.cnblogs.com/testopsfeng/p/14953399.html
Copyright © 2011-2022 走看看