当前位置: 首页 > news >正文

mysql数据库学习之用户权限管理(四)

文章目录

  • 一、用户管理
    • 1.1 查询用户
    • 1.2 创建用户
    • 1.3 修改用户密码
    • 1.4 删除用户
  • 二、权限控制
    • 2.1 查询权限
    • 2.2 授予权限
    • 2.3 撤销权限

一、用户管理

1.1 查询用户

  • 1) 找到mysql数据库
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |    |
+--------------------+
9 rows in set (0.00 sec)
  • 2)使用数据库

    use mysql;
    select * from user
  • 3)当前数据库所有的用户

    mysql> select * from user;
    
    • 图形化界面看到更直观,当前只有root用户,其他是mysql数据库默认生成

      在这里插入图片描述

1.2 创建用户

  • 语法格式: create user '用户名'@'主机名' identifiedby '密码';

  • 创建本地连接的用户admin

    -- 创建用户admin,只能够在当前主机localhost访问,123456;
    mysql> create user 'admin'@'localhost' identified by '123456';
    Query OK, 0 rows affected (0.01 sec)
    

    在这里插入图片描述

  • 创建远程连接的用户admin2

    -- 创建远程用户admin2,可以在任意主机访问该数据库,密码123456;
    mysql> create user 'admin2'@'%' identified by '123456';
    Query OK, 0 rows affected (0.00 sec)
    

    在这里插入图片描述

1.3 修改用户密码

  • 语法格式:alter user '用户名'@'主机名' identified with mysql_native_password by '新密码';

    -- 修改用户admin的访问密码为654321;
    mysql> alter user 'admin'@'localhost' identified with mysql_native_password by '654321';
    Query OK, 0 rows affected (0.00 sec)
    

1.4 删除用户

  • 语法格式:drop user '用户名'@'主机名'

    -- 删除admin用户
    mysql> drop user 'admin'@'localhost';
    Query OK, 0 rows affected (0.00 sec)
    

    在这里插入图片描述

  • 注意:主机名可以使用%通配,这类SQL开发人员操作的比较少,主要是DBA(Database Administrator 数据库管理员)使用。

二、权限控制

2.1 查询权限

  • 语法格式:show grants for '用户名'@'主机名'

  • 查询admin2用户的权限

    -- admin2用户的权限目前是NO,没有任何权限
    mysql> show grants for 'admin2'@'%';
    +------------------------------------+
    | Grants for admin2@%                |
    +------------------------------------+
    | GRANT USAGE ON *.* TO 'admin2'@'%' |
    +------------------------------------+
    1 row in set (0.00 sec)
    

在这里插入图片描述

2.2 授予权限

  • 相关权限列表

    在这里插入图片描述

  • 语法格式:grant 权限列表 on 数据库名.表名 to '用户名'@'主机名';

    -- 给admin2用户授予test数据库所有权限
    mysql> grant all on test.* to 'admin2'@'%';
    Query OK, 0 rows affected (0.00 sec)mysql> show grants for 'admin2'@'%';
    +--------------------------------------------------+
    | Grants for admin2@%                              |
    +--------------------------------------------------+
    | GRANT USAGE ON *.* TO 'admin2'@'%'               |
    | GRANT ALL PRIVILEGES ON `test`.* TO 'admin2'@'%' |
    +--------------------------------------------------+
    2 rows in set (0.00 sec)
    

2.3 撤销权限

  • 语法格式:revoke 权限列表 on 数据库名.表名 from '用户名'@'主机名';

    -- 撤销admin2用户test数据库所有权限
    mysql> revoke all on test.* from 'admin2'@'%';
    Query OK, 0 rows affected (0.00 sec)mysql> show grants for 'admin2'@'%';
    +------------------------------------+
    | Grants for admin2@%                |
    +------------------------------------+
    | GRANT USAGE ON *.* TO 'admin2'@'%' |
    +------------------------------------+
    1 row in set (0.00 sec)
    
  • 注意:多个权限之间,使用逗号分隔授权时,数据库名和表名可以使用*进行通配,代表所有。

http://www.dtcms.com/a/423264.html

相关文章:

  • 如何做网站网页流程粤icp备案号查询网官网
  • AI使用 Node.js modbus-serial 搭建一个可交互的 Modbus TCP 主站与从站 Demo
  • Websocket+cpolar:如何轻松实现服务远程访问?
  • 嵌入式Linux BootLoader全景图:主流选择与核心对比
  • 基于Springboot的DDD实战(不依赖框架)
  • 网站设计流程步骤网站网络资源建立
  • 不用宝塔用linux操作mysql
  • Nginx 服务器
  • 网站开发浏览器企业网站建设定位注意的问题
  • AI视频生成进入多镜头叙事时代!字节发布 Waver 1.:一句话生成 10 秒 1080p 多风格视频,创作轻松“一键”达!
  • 怎样创建网站吉洋大鼓免费广告发布平台
  • 【Python3教程】Python3高级篇之集成MongoDB
  • MongoDB源码分析慢日志:从配置到实现的完整解析
  • Bootloader核心原理与简单实现:从零写一个bootloader
  • MongoDB到关系型数据库:JSON字段如何高效转换?
  • 网站排名优化原理一个公司能备案多个网站吗
  • 苏大团队联合阿丘科技发表异常生成新方法:创新双分支训练法,同步攻克异常图像生成、分割及下游模型性能提升难题。
  • wordpress如何使用百度主动推送seo短视频网页入口引流下载
  • Docker 镜像加速安装MySQL操作步骤
  • 量子计算技术全景:从硬件路线到AI融合
  • 人工智能-机器学习day1
  • 济南网站制作企业建设部标准定额网站
  • 微服务组件-Eureka 技术详解
  • ARM架构下I/O内存映射全面技术分析
  • 大学网站建设管理办法岳阳市网站建设推广
  • Java 操作 XML 及动态生成报告:从解析到实战
  • 网络配置config.xml的android.mk解析
  • 网站导读怎么做wordpress二级目录创建
  • 分布式限流
  • ES-DE 前端模拟器最新版 多模拟器游戏启动器 含游戏ROM整合包 最新版