zoukankan      html  css  js  c++  java
  • MySQL 用户管理

    创建用户并授权:

    语法:grant privileges on dbName.tableName to user@host identified by "password";
    flush privileges;

    privileges 表示要授予的权限,常见的权限有:
    all 所有权限
    select 查询权限
    delete 删除权限
    update 更新权限
    create 创建权限
    insert 插入权限
    drop 删除数据库、数据表权限

    dbName.tableName 表示对哪些库的哪些表进行授权,常见用法如下:
    *.* 表示对所有库的所有表进行授权
    dbName.* 表示对指定库的所有表进行授权
    dbName.tableName 表示对指定库的指定表进行授权

    user@host 表示授权给哪个用户以及允许该用户从哪里登录到数据库,常见用法如下:
    'user'@'localhost' 表示只允许该用户只能从本地登录到数据库
    'user'@'%' 表示允许该用户可以从任何一台机器远程登录到数据库
    'user'@'192.168.1.2' 表示只允许该用户只能从192.168.1.2这台主机远程登录到数据库

    "password" 用于设置用户密码
    flush privileges; 用于刷新用户权限

    PS:
    如果用户不存在,则会自动创建用户
    如果用户存在,则会修改用户的权限及密码

    例子:

    mysql> grant all on *.* to 'user1'@'localhost' identified by 'password';                  
    mysql> grant all on db1.* to 'user2'@'%' identified by 'password';                        
    mysql> grant select,insert on db1.* to 'user3'@'192.168.1.2' identified by 'password';    
    # 分别表示:
    # 创建 user1 用户,允许对所有库的所有表进行增删查改等所有操作,且只能从本地登录到数据库
    # 创建 user2 用户,允许对db1库的所有表进行增删查改等所有操作,且可以从任意一台主机远程登录到数据库
    # 创建 user3 用户,只允许对db1库的所有表进行查询和插入操作,且只能从192.168.1.2这台主机远程登录到数据库
    mysql> flush privileges;                       # 授权完之后要刷新权限
    mysql> show grants;                            # 查看所有用户的授权信息
    mysql> show grants for 'user2'@'192.168.1.2';  # 查看指定用户的授权信息

          

  • 相关阅读:
    ☆ [HDU2157] How many ways?? 「矩阵乘法求路径方案数」
    [HDU2065] "红色病毒"问题
    [SP1043] GSS1
    [POJ3233] Matrix Power Series
    「网络流24题」圆桌问题
    [BZOJ4260] Codechef REBXOR
    [HDU5536] Chip Factory
    ☆ [HDU4825] Xor Sum「最大异或和(Trie树)」
    「网络流24题」最长不下降子序列问题
    「网络流24题」试题库问题
  • 原文地址:https://www.cnblogs.com/pzk7788/p/10407462.html
Copyright © 2011-2022 走看看