MySQL8--用户与权限管理

news2025/2/25 3:20:35

原文网址:MySQL8--用户与权限管理_IT利刃出鞘的博客-CSDN博客

简介

说明

本文介绍MySQL8的用户与权限的管理,包括:用户的创建与删除、授权与撤销权限等。

为什么要管理用户与权限?

目的是保证数据库的安全性,只授予能满足需要的最小权限,防止用户干坏事,比如:删除了表、清空了数据库等。

Java星球:way2j.com

注意

以下所有命令都必须先用mysql命令连接到数据库:

mysql -uroot -p

回车后会提示输入密码。 

查看用户

SELECT host, user, plugin FROM mysql.user;

红色箭头:主管理员

黄色箭头:mysql系统自带的,不要动它。

蓝色箭头:自己创建的用户,这个是我以前创建的

创建用户

CREATE USER '#userName'@'#host' IDENTIFIED BY '#passWord';
FLUSH PRIVILEGES;

#userName 代表你要创建的此数据库的新用户账号
#host 代表允许访问的主机。
如果host_name省略,默认为%。详情如下

  • %代表通配所有host地址权限(可远程访问)
  • localhost为本地权限(不可远程访问)
  • 指定某个ip访问权限,如10.138.106.102

#passWord 用户的密码

示例

本处要创建的用户是testUser,密码是111222,并且可远程访问

CREATE USER 'testUser'@'%' IDENTIFIED BY '111222';
FLUSH PRIVILEGES;

执行完后查看结果:

删除用户

法1:删除用户(指定主机)

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

例如:

DROP USER 'testUser'@'%';

法2:删除用户

默认删除host为%的用户

DROP USER '用户名';

法3:DELETE语句删除用户 

DELETE FROM mysql.user WHERE Host='主机名' AND User='用户名';

例如:

DELETE FROM mysql.user WHERE Host='%' AND User='testUser';

修改密码

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

例如:

CREATE USER 'testUser'@'%' IDENTIFIED BY '111222';

查看用户权限

说明

SHOW GRANTS FOR '#userName'@'#host';

#userName 代表用户名

#host 代表允许访问的主机,如果host_name省略,默认为%。详情如下

  • %代表通配所有host地址权限(可远程访问)
  • localhost为本地权限(不可远程访问)
  • 指定特殊Ip访问权限 如10.138.106.102

示例

MySQL所有权限见:此文

给用户授权

示例

例1:给adminUser用户赋予所有权限

GRANT ALL ON *.* TO 'adminUser'@'%';

例2:给testUser用户赋予所有库表的增删改查权限

GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, INDEX, CREATE VIEW, SHOW VIEW *.* TO 'testUser'@'%';

最后都要刷新权限

FLUSH PRIVILEGES;

详解

GRANT #auth ON #databaseName.#tableName TO '#userName'@'#host';

#auth 代表权限,例如

  • ALL 全部权限
  • SELECT 查询权限(单个)
  • SELECT,INSERT,UPDATE,DELETE 增删改查权限(多个权限)

#databaseName 代表数据库名

  • *代表全部库

#tableName 代表具体表,如下

  • *代表全部表
  • A,B 代表具体A,B表

#userName 代表用户名

#host 代表允许访问的主机,如果host_name省略,默认为%。详情如下:

  • %代表通配所有host地址权限(可远程访问)
  • localhost为本地权限(不可远程访问)
  • 指定某个ip访问权限,如10.138.106.102

撤销用户权限

REVOKE #auth ON '#databaseName'.'#tableName' TO '#userName'@'#host';

与上边“给用户授权”的参数含义是一样的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1960394.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

TCP/IP协议——使用Socket套接字实现

目录 Socket 使用Socket实现TCP客户端和服务器的过程 使用Socket搭建TCP服务器 线程优化 向客户端发送消息 连接的断开 客户端主动断开 服务端主动断开 服务器完整的程序 使用Socket编写客户端程序连接TCP服务器 Socket Socket是一种网络通信协议,它允许…

不再担心数据丢失:用rsync打造你的自动化备份解决方案

在现代IT环境中,数据备份是一项至关重要的任务。无论是个人文件还是企业数据,都需要有可靠的备份机制来防止数据丢失。今天,我们将介绍一种高效的备份方案:使用rsync实现自动化备份目录。 什么是rsync? rsync 是一个开…

vscode+cmake+msvc+vcpkg的入门使用

一.环境安装 1.下载vscode并安装: Download Visual Studio Code - Mac, Linux, Windows 2.安装完成后,安装C和cmake 相关工具,如图。 3.vcpkg的下载和安装 克隆vcpkg的仓库到本地:https://github.com/microsoft/vcpkg.git,运行bo…

《学会 SpringMVC 系列 · 基础篇》

📢 大家好,我是 【战神刘玉栋】,有10多年的研发经验,致力于前后端技术栈的知识沉淀和传播。 💗 🌻 CSDN入驻不久,希望大家多多支持,后续会继续提升文章质量,绝不滥竽充数…

deeplapv3 动机

语义分割是计算机视觉领域中重要的任务之一,语义分割的目的是为图像中的每个像素分配标签。相比于传统方法,以深度学习为基础的全卷积网络极大地提高了语义分割算法的性能。 在语义分割网络中,常用到如下2种结构: 空间金字塔池化…

C++STL简介(三)

目录 1.vector的模拟实现 1.1begin() 1.2end() 1.3打印信息 1.4 reserve() 1.5 size() 1.6 capacity() 1.7 push_back() 1.8[ ] 1.9 pop_back() 1.10 insert&…

【涵子来信】——AI革新:1.新时代是便捷的,要会用

各位读者朋友们: 我们现在AI时代的十字路口,AI是为生活带来便利的,我们要会使用AI。今天这篇文章来讲述一下AI的正确使用。 一、 AI的使用 1.1.便捷之中要会辨别 AI是带来强大的,利用好可以给生活带来便捷。 像之前WWDC24宣传…

SAP 字符串关键字找程序

关键字查询程序 : RPR_ABAP_SOURCE_SCAN或RS_ABAP_SOURCE_SCAN

Python网络爬虫:基础与实战!附淘宝抢购源码

Python网络爬虫是一个强大的工具,用于从互联网上自动抓取和提取数据。下面我将为你概述Python网络爬虫的基础知识和一些实战技巧。 Python网络爬虫基础 1. HTTP请求与响应 网络爬虫的核心是发送HTTP请求到目标网站并接收响应。Python中的requests库是处理HTTP请求…

C语言——运算符及表达式

C语言——运算符及表达式 运算符运算符的分类(自增运算符)、--(自减运算符)赋值运算符逗号运算符(顺序求值运算符) 表达式 运算符 运算符的分类 C语言的运算符范围很宽,除了控制语句和输入输出…

从数据血缘谈一谈如何实现数据管理的“自治理”

数据治理是企业数据管理的核心,它通过系统性的管理行为,确保数据的完整性、准确性、安全性、合规性和价值最大化。数据治理有助于提高数据质量和可用性,减少数据管理的风险,增强企业对数据的信任,从而提升业务效率和竞…

mongodb中ret resulted in status UnknownError: 24: Too many open files

mongodb使用中遇到的问题 Invariant failure: ret resulted in status UnknownError:24:Too many open files at *** 错误原因为打开文件过多的错误,即“句柄数超出系统显示”。 1.需要更改一下系统的句柄数: 查看一下系统目前设置的句柄数 open files 对…

算法刷题day2|贪心:122. 买卖股票的最佳时机 II、55. 跳跃游戏、45. 跳跃游戏 II、1005. K 次取反后最大化的数组和

122. 买卖股票的最佳时机 II 贪心一 画出股票的折线图&#xff0c;将图中折线上升区间相加即是最大利润。 class Solution { public:int maxProfit(vector<int>& prices) {int result 0;for (int i 1; i < prices.size(); i){//下降区间直接跳过if (prices[i]…

创建完整的APP页面

完整的页面创建过程包括三个步骤 在layout目录下创建XML文件 创建与XML文件对应的Java代码 在AndroidMainfest.xml&#xff08;清单文件&#xff09;中注册页面配 一步到位的activity创建 跳转&#xff1a;意图 创建一个意图实例&#xff0c;使用setClass&#xff08;&#…

python机器学习12--Regression回归分析

1.数据准备 第一步&#xff1a;数据内容一定要有以下两种值域的因果数据。  特征&#xff08;Feature&#xff09;&#xff1a;因&#xff0c;在统计学称为自变量&#xff08;Independent Variable&#xff09;。  标签答案&#xff08;Label&#xff09;&#xff1a;果&a…

4条社交规则,让你受益

一个人只要在社会生活中&#xff0c;那他就免不了社会交往。 有时候&#xff0c;我们在社交中之所以不受欢迎&#xff0c;主要还是因为方法和策略的问题&#xff0c;也就是说缺乏对社交的深入思考&#xff0c;没有去做正确的事情。要知道&#xff0c;只要思路和方向对了&#…

【计算机毕设论文】基于SpringBoot的语音识别系统的设计与实现

&#x1f497;博主介绍&#xff1a;✌全平台粉丝5W,高级大厂开发程序员&#x1f603;&#xff0c;博客之星、掘金/知乎/华为云/阿里云等平台优质作者。 【源码获取】关注并且私信我 感兴趣的可以先收藏起来&#xff0c;同学门有不懂的毕设选题&#xff0c;项目以及论文编写等相…

传统制造业物流管理有什么缺陷?智能供应链技术推动制造业转型!

在科技迅猛发展的今天&#xff0c;智能制造已成为推动工业转型和升级的关键力量。作为智能制造的重要组成部分&#xff0c;物流管理的智能化不仅关系到企业运营的效率&#xff0c;更直接影响到整个制造业的竞争力。随着中国社会物流总额的持续攀升&#xff0c;物流行业展现出了…

C语言内存函数超详解

文章目录 前言1. memcpy1. 1 memcpy 的使用1. 2 memcpy 的模拟实现 2. memmove2. 1 memmove 使用 3. memset3. 1 memset 函数的使用3. 2 memset 的模拟实现 4. memcmp4. 1 memcmp 函数的使用4. 2 memcmp 的模拟实现 前言 C语言为我们提供了字符串的一些函数&#xff0c;比如复…