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

news/2024/7/24 11:31:42 标签: 学习, mysql

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

使用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表里去删除:

注意要刷新权限。

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

登录:

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


http://www.niftyadmin.cn/n/5241445.html

相关文章

ARM64安全特性之MTE

ARM64架构引入了MTE(Memory Tagging Extension)作为安全特性,用于增强内存访问的安全性。MTE使用内存标签来追踪和保护内存操作,以帮助检测和防御缓冲区溢出、使用-after-free等内存相关的安全漏洞。 MTE的核心思想是给每个内存地…

代码随想录二刷 |栈与队列 |理论基础

代码随想录二刷 |栈与队列 |理论基础 栈常用操作 队列常用操作 栈与队列是C标准库中的两个数据结构。 栈 栈先进后出,提供 push 和 pop 等接口,所有元素必须符合先进后出的原则,所以栈不提供走访功能,也不…

SpringBoot使用注解实现参数校验

文章目录 参数校验- Validation- Hibernate Validator 校验注解注解通用属性- Validator 内置注解- Hibernate Validator 附加注解 校验开启Valid和Validated 校验分类- Controller校验- Spring Bean校验 校验使用- Controller:参数对象校验- Spring Bean&#xff1…

uniapp横向滚动示例

目录 插件市场案例最后 插件市场 地址 案例 地址 最后 感觉文章好的话记得点个心心和关注和收藏,有错的地方麻烦指正一下,如果需要转载,请标明出处,多谢!!!

[ROS2] --- 手动编写一个节点

1 准备工作 1.1 创建/编译工作空间 创建工作空间 mkdir -p ~/dev_ws/src cd ~/dev_ws/src1. 2 创建功能包 ros2 pkg create learning01_write_a_node --build-type ament_cmake --dependencies rclcpp可以看到目录结构如下: 1. 3 创建节点 在learing01_write…

LINUX 下部署github仓库

打开tumx django-admin startproject project_name #创建django项目 project_name配置git ssh-keygen # 生成密钥 连接 github 在github中打开setting 添加密钥 并且允许 write access git init # 把当前文件夹配置为git仓库 git config --global user.name xxx git config --g…

Angular 进阶之四:SSR 应用场景与局限

应用场景 内容丰富,复杂交互的动态网页,对首屏加载有要求的项目,对 seo 有要求的项目(因为服务端第一次渲染的时候,已经把关键字和标题渲染到响应的 html 中了,爬虫能够抓取到此静态内容,因此更…

WTR096A-16S语音芯片IC:丰富的IO口实现个性化定制功能需求

随着科技的飞速发展,定制化已成为产品设计的重要趋势,而唯创知音的WTR096A-16S语音芯片凭借其丰富的IO口和灵活性,为各种应用带来了全新的定制化功能。 1. 强大的硬件支持:丰富的IO口 WTR096A-16S语音芯片设计了丰富的IO口&…