Mysql学习查缺补漏----02 mysql之DCL 数据控制语言

2023-12-05 20:44

本文主要是介绍Mysql学习查缺补漏----02 mysql之DCL 数据控制语言,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

查看数据库里都有哪些用户。

使用root任何一个用户都可以登录。

本机登录。

也可以这样登录其他的机器。

修改user表。

刷新权限:

现在我们看到了只有本机才能登陆。

我们这样就可以限制这个mysql指定某台服务器登录。

详解忘记密码以及如何修改用户密码

我们用这种方式修改本机的root的密码。

修改完一定要记得刷新权限。

登录成功。

这种修改方法存在缺陷,在输入命令的同时,命令中包含密码,实际上这样就已经暴露了。所以可以采用第二种方法。

这样需要自己输入新密码,密码不可见。

查出所有root用户信息。

我们可以看到密码和密码的修改时间。

所以我们第三种方法是还可以修改这个表进行修改用户的密码:

因为这个会加密,所以需要使用password(我们的密码)。

但是可能在数据库里查出两条用户对不同服务器都有权限。

这种情况就不能用这种方法。

我们这次再加上它是哪一台机器的。

每一次都需要刷新权限。

先到我们的配置文件。

去掉这个注释。

修改完配置文件记得要重启mysql服务。

我们可以直接无密码方式登录。

然后再修改密码即可。

讲解如何创建新用户与删除用户并限制ip登录:

我们可以查到我们新创建的用户。

查看pig用户的权限。

USAGE:无权限的意思。

root用户有很多权限。

WITH GRANT OPTION:表示这个用户拥有grant权限,即可以对其他用户授权

目前这个用户在所有的主机上都可以登录成功。

加上host地址才能登录成功。

也可以指定在哪个网段上登录。

注:

本机登录的话也不要只是默认就完事。我们也要注意一下表里的host配置。

如何限制用户对库表的增删改查权限:

授权:

方式一:

授权语法:grant 权限1,权限2..... on 数据库对象 to '用户'

方式二:

grant 权限1,权限2..... on 数据库对象 to '用户'@'host' identified by 'password';

回收权限:

回收语法:revoke 权限1,权限2..... on 数据库对象 from '用户'@'host';

实战例子:

对现有用户进行授权:对现有用户pig授予所有库所有表所有权限。

all privileges:代表所有权限。

*.*表示所有库所有表。

grant all privileges on *.* to 'pig';

目前它只有一个库的权限。

执行授权语句。

刷新权限:

再次就可以看到它有这么多的数据库的权限了。

就可以对这些库里的表进行增删改查了。

对没有的用户进行授权:创建一个新用户dog授予XD库的所有权限,登录密码123456,任何一台主机登录

我们可以先创建个用户再用上面那种方式再进行给它授权。

也可也用下面的方式,创建的同时进行授权:

grant all privileges on XD.* to 'dog'@'%' identified by '123456';

可以看到只有一个XD库的权限。

另外一种比较粗暴的方法是,直接从user表里去删除:

注意要刷新权限。

创建一个用户并只赋予用户查询和修改数据库的权限:

登录:

这样它就只有查询和修改的权限了。

这篇关于Mysql学习查缺补漏----02 mysql之DCL 数据控制语言的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/459060

相关文章

SQL注入漏洞扫描之sqlmap详解

《SQL注入漏洞扫描之sqlmap详解》SQLMap是一款自动执行SQL注入的审计工具,支持多种SQL注入技术,包括布尔型盲注、时间型盲注、报错型注入、联合查询注入和堆叠查询注入... 目录what支持类型how---less-1为例1.检测网站是否存在sql注入漏洞的注入点2.列举可用数据库3.列举数据库

Python将大量遥感数据的值缩放指定倍数的方法(推荐)

《Python将大量遥感数据的值缩放指定倍数的方法(推荐)》本文介绍基于Python中的gdal模块,批量读取大量多波段遥感影像文件,分别对各波段数据加以数值处理,并将所得处理后数据保存为新的遥感影像... 本文介绍基于python中的gdal模块,批量读取大量多波段遥感影像文件,分别对各波段数据加以数值处

Mysql虚拟列的使用场景

《Mysql虚拟列的使用场景》MySQL虚拟列是一种在查询时动态生成的特殊列,它不占用存储空间,可以提高查询效率和数据处理便利性,本文给大家介绍Mysql虚拟列的相关知识,感兴趣的朋友一起看看吧... 目录1. 介绍mysql虚拟列1.1 定义和作用1.2 虚拟列与普通列的区别2. MySQL虚拟列的类型2

使用MongoDB进行数据存储的操作流程

《使用MongoDB进行数据存储的操作流程》在现代应用开发中,数据存储是一个至关重要的部分,随着数据量的增大和复杂性的增加,传统的关系型数据库有时难以应对高并发和大数据量的处理需求,MongoDB作为... 目录什么是MongoDB?MongoDB的优势使用MongoDB进行数据存储1. 安装MongoDB

mysql数据库分区的使用

《mysql数据库分区的使用》MySQL分区技术通过将大表分割成多个较小片段,提高查询性能、管理效率和数据存储效率,本文就来介绍一下mysql数据库分区的使用,感兴趣的可以了解一下... 目录【一】分区的基本概念【1】物理存储与逻辑分割【2】查询性能提升【3】数据管理与维护【4】扩展性与并行处理【二】分区的

MySQL中时区参数time_zone解读

《MySQL中时区参数time_zone解读》MySQL时区参数time_zone用于控制系统函数和字段的DEFAULTCURRENT_TIMESTAMP属性,修改时区可能会影响timestamp类型... 目录前言1.时区参数影响2.如何设置3.字段类型选择总结前言mysql 时区参数 time_zon

Python MySQL如何通过Binlog获取变更记录恢复数据

《PythonMySQL如何通过Binlog获取变更记录恢复数据》本文介绍了如何使用Python和pymysqlreplication库通过MySQL的二进制日志(Binlog)获取数据库的变更记录... 目录python mysql通过Binlog获取变更记录恢复数据1.安装pymysqlreplicat

Linux使用dd命令来复制和转换数据的操作方法

《Linux使用dd命令来复制和转换数据的操作方法》Linux中的dd命令是一个功能强大的数据复制和转换实用程序,它以较低级别运行,通常用于创建可启动的USB驱动器、克隆磁盘和生成随机数据等任务,本文... 目录简介功能和能力语法常用选项示例用法基础用法创建可启动www.chinasem.cn的 USB 驱动

使用SQL语言查询多个Excel表格的操作方法

《使用SQL语言查询多个Excel表格的操作方法》本文介绍了如何使用SQL语言查询多个Excel表格,通过将所有Excel表格放入一个.xlsx文件中,并使用pandas和pandasql库进行读取和... 目录如何用SQL语言查询多个Excel表格如何使用sql查询excel内容1. 简介2. 实现思路3

Go语言实现将中文转化为拼音功能

《Go语言实现将中文转化为拼音功能》这篇文章主要为大家详细介绍了Go语言中如何实现将中文转化为拼音功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 有这么一个需求:新用户入职 创建一系列账号比较麻烦,打算通过接口传入姓名进行初始化。想把姓名转化成拼音。因为有些账号即需要中文也需要英