首页 > 数据库 >MySQL入门系列2-数据控制语言(DCL)

MySQL入门系列2-数据控制语言(DCL)

时间:2023-09-05 13:05:36浏览次数:53  
标签:DCL 用户名 入门 SQL 主机名 USER MySQL 权限 localhost

一、概念

DCL数据控制语言,用来管理数据库用户、控制数据库的访问权限。

二、查询用户

select * from mysql.user;

MySQL入门系列2-数据控制语言(DCL)_MySQL

其中 Host代表当前用户访问的主机, 如果为localhost, 代表只能够在当前本机访问,不可以远程访问的。 User代表的是访问该数据库的用户名。在MySQL中需要通过Host和User来唯一标识一 个用户。

二、创建用户

格式:

CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';

SQL语句:

CREATE USER 'qq' @'localhost' IDENTIFIED BY '123456';

创建一个名称为qq,密码为123456的用户。

MySQL入门系列2-数据控制语言(DCL)_MySQL_02

MySQL入门系列2-数据控制语言(DCL)_权限_03

三、修改用户密码

格式:

ALTER USER '用户名'@'主机名' IDENTIFIED WITH mysql_native_password BY '新密码';

SQL语句:

ALTER USER 'qq' @'localhost' IDENTIFIED WITH mysql_native_password BY '12345';

MySQL入门系列2-数据控制语言(DCL)_权限_04

四、删除用户

格式:

DROP USER '用户名'@'主机名';

SQL语句:

DROP USER 'qq' @'localhost';

MySQL入门系列2-数据控制语言(DCL)_用户_05

五、权限相关操作

常见的权限列表:

权限

说明

ALL/ALL PRIVILEGES

所有权限

SELECT

查询权限

INSERT

插入权限

UPDATE

修改权限

DELETE

删除权限

ALTER

修改表权限

DROP

删除数据库、表、视图权限

CREATE

创建数据库、表权限

1.查询用户权限

格式:

SHOW GRANTS FOR '用户名'@'主机名' ;

SQL语句:

SHOW GRANTS FOR 'qx' @'localhost';

MySQL入门系列2-数据控制语言(DCL)_MySQL_06

2.授予权限

格式:

GRANT 权限列表 ON 数据库名.表名 TO '用户名'@'主机名';

SQL语句:

GRANT SELECT ON mybase.sys_user TO 'qx' @'localhost';

MySQL入门系列2-数据控制语言(DCL)_MySQL_07

3.撤销权限

格式:

REVOKE 权限列表 ON 数据库名.表名 FROM '用户名'@'主机名';

SQL语句:

REVOKE SELECT ON mybase.sys_user FROM 'qx' @'localhost'

MySQL入门系列2-数据控制语言(DCL)_权限_08

MySQL入门系列2-数据控制语言(DCL)_MySQL_09

注意事项:

  1. 多个权限之间使用逗号分隔。
  2. 授权时, 数据库名和表名可以使用 * 进行通配,代表所有。

标签:DCL,用户名,入门,SQL,主机名,USER,MySQL,权限,localhost
From: https://blog.51cto.com/u_13312531/7370607

相关文章

  • 软件测试|Django 入门:构建Python Web应用的全面指南
    引言Django是一个强大的PythonWeb框架,它以快速开发和高度可扩展性而闻名。本文将带您深入了解Django的基本概念和核心功能,帮助您从零开始构建一个简单的Web应用。什么是Django?Django是一个基于MVC(模型-视图-控制器)设计模式的Web框架,旨在简化Web应用程序的开发过程。它由Django软......
  • 1,mysql基础:mysql的安装,mysql的基本数据类型
    第一章安装1,windows安装https://dev.mysql.com/downloads/mysql/如果是msi的安装包,一步步安装就可以,如果是zip包,解压后需要设置在存在有bin文件夹的同目录新建一个my.ini文件加入一下代码:[mysqld]#设置3306端口port=3306#设置mysql的安装目录basedir=C:\ProgramFi......
  • Qt调用 mysql数据库 QSqlQuery::exec()堵塞
    RT,因为某个字段名称写错了,修改字段语句,语句大致如下altertablet_user_settingchangefield1field2varchar(32)default'11'comment'22'每当执行到query.exec()时,直接堵塞不动,刚好我这里使用workbench查看数据库,在workbench调用同样语句,程序就不堵塞了,每次都是这样。最......
  • Windows下Mysql完全卸载教程
    1,windows系统(快捷键win+r)进入命令行输入:netstopmysql2,进入控制面板,卸载mysql3,进入C:\ProgramFiles(x86),C:\ProgramFiles,C:\ProgramData中,将MySQL文件夹删除4,在注册表中彻底清除mysql的东西快捷键win+r输入regedit进入注册表找到HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Ser......
  • MySQL将timestamp默认值设置为null
    问题以前MySQL创建表的的时候,timestamp类型的字段可以不加默认值。createTimetimestampCOMMENT'创建时间',这样创建是没有问题的。但是现在却报错,“Invaliddefaultvaluefor‘createTime’”问题原因:因为MySQL5.6以后timestamp设定默认值规则改变,不能为000000-0000:00:00......
  • mysql忘记root密码
    mysql忘记root密码并修改:1、绕过密码验证修改msyql配置文件[mysqld]下添加skip-grant-tables    ##跳过授权表2、重启mysql服务3、登录mysql,use进入mysql库,修改user表修改root密码updateusersetauthentication_string='123'where user='root'andhost=......
  • 【Kafka系列】(一)Kafka入门
    有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步,认准https://blog.zysicyj.top首发博客地址系列文章地址Kafka是什么?一句话概括:ApacheKafka是一款开源的消息引擎系统什么是消息引擎系统?消息引擎系统(MessageBrokerSystem)是一种中间件软件或服务,用......
  • 【面试题精讲】MySQL中覆盖索引是什么
    有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步,认准https://blog.zysicyj.top首发博客地址系列文章地址在MySQL中,覆盖索引是一种特殊类型的索引,它包含了查询所需的所有列,而不仅仅是索引列本身。当一个查询可以完全使用覆盖索引来满足时,MySQL可以直接从......
  • 入门篇-其之二-Java基础知识
    目录对第一个Java程序的思考外层结构——类内层结构——main方法输出语句注释单行注释多行注释文档注释文档注释常用标签使用javadoc命令生成网页风格的文档阿里巴巴Java开发手册关于文档注释的规范关键字标识符变量变量的概念定义并初始化变量使用变量的注意事项对第一个Java程......
  • Python入门 - 推导式
    推导式是什么?用于创建容器对象的一种语法,主要用于创建list,dict,set,tuple。 1,list推导式遍历+条件+产生的元素,用[]包装产生的每一个元素,其中条件是可选的。my_list=[1,2,3]result=[elem+1foreleminmy_list]print(type(result),result)#<class'list......