• 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';  # 查看指定用户的授权信息

          

  • 相关阅读:
    Supervisor
    JS操作JSON总结
    电脑连接海信电视 HDMI
    upupw nginx服务器 rewrite设置
    PHP实现远程图片下载
    web页面调用IOS的事件
    composer更新不成功,启用国内镜像网站的配置更改办法
    Oracle中的一连接语句
    Oracle 树操作(select…start with…connect by…prior)
    MyEclipse下Tomcat无法部署项目 finish按钮无法点击
  • 原文地址:https://www.cnblogs.com/pzk7788/p/10407462.html
Copyright © 2020-2023  润新知