MySQL用户与权限

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: MySQL用户与权限用户连接到mysql,并做各种查询,在用户和服务器中间分为两个阶段:1:用户是否有权连接上来2:用户是否有权执行此操作(如select,update等等)先看第一个阶段:服务器如何判断用户是否有权连接上来依据三个参数:你从哪来? host你是谁? user你...

MySQL用户与权限
用户连接到mysql,并做各种查询,在用户和服务器中间分为两个阶段:

1:用户是否有权连接上来

2:用户是否有权执行此操作(如select,update等等)

先看第一个阶段:服务器如何判断用户是否有权连接上来

依据三个参数:

你从哪来? host

你是谁? user

你的密码是多少? password

用户的这3个信息,存储在mysql库中的user表下


修改host域,使IP可以连接

update user set host='ip地址' where user='root';
flush privileges;#冲刷权限
我们也可以删除用户使此用户无法连接:

delete from user where user='';

flush privileges;

如何修改用户的密码:

在mysql8.0版本以上修改密码的话使用如下语句完成:

use mysql
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';
FLUSH PRIVILEGES;
新增一个用户并授权:

MySQL8.0以下的使用下面的语句

grant [权限1,权限2,权限3......]on 哪个库.哪张表 to 用户@'host' identfied by 'password';

MySQL8.0以上需要将创建用户和授权分开进行:

创建新用户:

create user 'lisi'@'192.168.3.110' identified by'111111';

给新用户授权:

grant all privileges on . to 'lisi'@'192.168.3.110';

常用权限有all,create,drop,insert,delete,update,select

我们来查看一下lisi用户的全局权限:

可以看到他的权限是非常大的;那么现在我们要收回权限:

收回权限

revoke all on . form 'lisi'@'192.168.3.110';
那么我们授权lisi用户的test库权限:

grant all on test.* to 'lisi'@'192.168.3.110';
然后我们再看lisi用户的全局权限:

select * from user where user='lisi'G

我们看到它的全局权限变成了NO,但是他真的就没有任何权限吗?

其实不是的,他在db表的记录里还有权限:

select * from db where user='lisi'G

而且我们show databases;可以发现他还有操作test库的权力:

-------------------------------------------

同样的,我们使用grant all on test.goods to 'lisi'@'192.168.3.110';这条语句还能赋予lisi操作表的权力。
原文地址https://www.cnblogs.com/wanghaoyu666/p/11326351.html

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
6月前
|
SQL 关系型数据库 MySQL
mysql用户权限设置
mysql用户权限设置
165 1
|
6月前
|
网络协议 关系型数据库 MySQL
mysql8.0远程连接权限设置
mysql8.0远程连接权限设置
177 0
|
17天前
|
关系型数据库 MySQL Docker
docker环境下mysql镜像启动后权限更改问题的解决
在Docker环境下运行MySQL容器时,权限问题是一个常见的困扰。通过正确设置目录和文件的权限,可以确保MySQL容器顺利启动并正常运行。本文提供了多种解决方案,包括在主机上设置正确的权限、使用Dockerfile和Docker Compose进行配置、在容器启动后手动更改权限以及使用 `init`脚本自动更改权限。根据实际情况选择合适的方法,可以有效解决MySQL容器启动后的权限问题。希望本文对您在Docker环境下运行MySQL容器有所帮助。
32 1
|
19天前
|
SQL NoSQL 关系型数据库
|
27天前
|
存储 关系型数据库 MySQL
基于案例分析 MySQL 权限认证中的具体优先原则
【10月更文挑战第26天】本文通过具体案例分析了MySQL权限认证中的优先原则,包括全局权限、数据库级别权限和表级别权限的设置与优先级。全局权限优先于数据库级别权限,后者又优先于表级别权限。在权限冲突时,更严格的权限将被优先执行,确保数据库的安全性与资源合理分配。
|
2月前
|
安全 关系型数据库 MySQL
Navicat工具设置MySQL权限的操作指南
通过上述步骤,您可以使用Navicat有效地为MySQL数据库设置和管理用户权限,确保数据库的安全性和高效管理。这个过程简化了数据库权限管理,使其既直观又易于操作。
345 4
|
6月前
|
关系型数据库 MySQL 数据库
mysql添加用户并设置数据库权限
mysql添加用户并设置数据库权限
|
3月前
|
关系型数据库 MySQL 数据库
MySQL用户权限管理你知道多少?
MySQL用户权限管理你知道多少?
105 0
|
3月前
|
关系型数据库 MySQL
MySQL 添加用户,分配权限
MySQL 添加用户,分配权限
64 0
|
4月前
|
关系型数据库 MySQL Linux
Linux部署实战前言,MySQL在CentOS安装【单机软件】,MySQL的安装需要root权限,yum install mysql,systemctl enable mysqld开机自启的意思
Linux部署实战前言,MySQL在CentOS安装【单机软件】,MySQL的安装需要root权限,yum install mysql,systemctl enable mysqld开机自启的意思