MySQL 用户相关的操作详解
MySQL 5.x 用户操作
创建用户
在
MySQL
5.x 中,使用GRANT
语句创建用户并授权:
语法
GRANT ALL PRIVILEGES ON *.* TO 'username'@'host' IDENTIFIED BY 'password';
-
username
:用户名 -
host
:指定用户可访问的主机,例如localhost
或%
(表示任何主机) -
password
:用户的密码
示例
GRANT ALL PRIVILEGES ON *.* TO 'testuser'@'localhost' IDENTIFIED BY 'testpassword';
授权
再次使用
GRANT
语句即可修改用户权限:
GRANT SELECT, INSERT ON database_name.* TO 'username'@'host';
刷新权限
需要刷新权限以生效:
FLUSH PRIVILEGES;
修改密码
修改用户密码使用
SET PASSWORD
或GRANT
语句:
SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');
示例
SET PASSWORD FOR 'testuser'@'localhost' = PASSWORD('newpassword');
删除用户
使用
DROP USER
删除用户:
DROP USER 'username'@'host';
示例
DROP USER 'testuser'@'localhost';
MySQL 8.x 用户操作
创建用户
在
MySQL 8.x
中,推荐使用CREATE USER
:
CREATE USER 'username'@'host' IDENTIFIED BY 'password';
示例
CREATE USER 'testuser'@'localhost' IDENTIFIED BY 'testpassword';
授权
授权使用
GRANT
语句:
MySQL 8.x
默认不需要手动执行FLUSH PRIVILEGES
,授权会立即生效。
GRANT SELECT, INSERT ON database_name.* TO 'username'@'host';
示例
GRANT ALL PRIVILEGES ON *.* TO 'testuser'@'localhost';
修改密码
修改密码使用
ALTER USER
语句:
ALTER USER 'username'@'host' IDENTIFIED BY 'newpassword';
示例
ALTER USER 'testuser'@'localhost' IDENTIFIED BY 'newpassword';
删除用户
删除用户同样使用
DROP USER
:
DROP USER 'username'@'host';
示例
DROP USER 'testuser'@'localhost';
重命名用户
MySQL 8.x
支持直接重命名用户:
RENAME USER 'old_username'@'host' TO 'new_username'@'host';
示例
RENAME USER 'testuser'@'localhost' TO 'newuser'@'localhost';
通用操作
查看用户
查看所有用户:
SELECT User, Host FROM mysql.user;
查看用户权限
查看特定用户的权限:
SHOW GRANTS FOR 'username'@'host';
示例
SHOW GRANTS FOR 'testuser'@'localhost';
撤销权限
使用
REVOKE
语句撤销权限:
REVOKE privilege_type ON database_name.* FROM 'username'@'host';
示例
REVOKE SELECT ON testdb.* FROM 'testuser'@'localhost';
PRIVILEGES
权限
在
MySQL
中,PRIVILEGES
是指权限,用于控制用户可以对数据库执行哪些操作,分为全局权限和基于数据库、表或列的权限。
全局权限
全局权限适用于整个
MySQL
服务器,通常授予*.*
(所有数据库和表)
权限列表及说明:
-
ALL PRIVILEGES
:授予用户所有权限(不包括GRANT OPTION
) -
GRANT OPTION
:允许用户将其拥有的权限授予其他用户 -
CREATE USER
:允许用户创建、删除、修改其他用户 -
FILE
:允许用户读取和写入服务器上的文件 -
PROCESS
:允许用户查看其他用户的查询或线程(通过SHOW PROCESSLIST
) -
RELOAD
:允许用户执行刷新操作,例如FLUSH
命令 -
SHOW DATABASES
:允许用户查看所有数据库(非仅限其拥有权限的数据库) -
SHUTDOWN
:允许用户关闭MySQL
服务器 -
SUPER
:允许用户执行高级管理操作,例如修改全局变量、杀死线程等 -
REPLICATION SLAVE
:允许用户配置和管理MySQL
复制从库 -
REPLICATION CLIENT
:允许用户查看主库和从库的状态
数据库级权限
数据库级权限适用于单个数据库的所有表
权限列表及说明:
-
CREATE
:允许用户创建新数据库或表 -
DROP
:允许用户删除数据库或表 -
EVENT
:允许用户创建、修改和删除事件 -
INDEX
:允许用户在表中创建或删除索引 -
ALTER
:允许用户修改表结构,例如添加或删除列 -
SHOW VIEW
:允许用户查看视图定义 -
TRIGGER
:允许用户创建或删除触发器
表级权限
表级权限适用于某个数据库中的特定表
权限列表及说明:
-
SELECT
:允许用户读取表中的数据(查询) -
INSERT
:允许用户向表中插入数据 -
UPDATE
:允许用户更新表中的数据 -
DELETE
:允许用户删除表中的数据 -
REFERENCES
:允许用户创建外键约束 -
LOCK TABLES
:允许用户锁定表,通常与事务处理相关
列级权限
列级权限是表级权限的进一步细化,适用于特定列
权限列表及说明:
-
SELECT
:允许用户查询特定列的数据 -
INSERT
:允许用户向特定列插入数据 -
UPDATE
:允许用户更新特定列的数据
示例
GRANT SELECT (column1, column2) ON mydb.mytable TO 'username'@'host';
存储程序权限
这些权限适用于存储过程和存储函数
权限列表及说明:
-
CREATE ROUTINE
:允许用户创建存储过程和存储函数 -
ALTER ROUTINE
:允许用户修改存储过程和存储函数 -
EXECUTE
:允许用户执行存储过程和存储函数
动态权限(MySQL 8.x
新增)
动态权限适用于特定场景,例如管理数据复制、安全性和审计功能
权限列表及说明:
-
BACKUP_ADMIN
:允许用户进行备份操作 -
GROUP_REPLICATION_ADMIN
:允许用户管理组复制设置 -
RESOURCE_GROUP_ADMIN
:允许用户管理资源组 -
RESOURCE_GROUP_USER
:允许用户使用资源组 -
SYSTEM_VARIABLES_ADMIN
:允许用户修改系统变量 -
PERSIST_RO_VARIABLES_ADMIN
:允许用户管理持久化只读变量
查看权限
- 查看当前用户的权限
SHOW GRANTS;
- 查看其他用户的权限
SHOW GRANTS FOR 'username'@'host';
相关文章:
MySQL 用户相关的操作详解
MySQL 5.x 用户操作 创建用户 在 MySQL 5.x 中,使用 GRANT 语句创建用户并授权: 语法 GRANT ALL PRIVILEGES ON *.* TO usernamehost IDENTIFIED BY password;username:用户名 host:指定用户可访问的主机,例如 loca…...

如何删除hugging face dowloaded的llm model?
如何删除hugging face dowloaded的llm model? 在现在需要使用llm进行research的情况下,经常会出现,由于下载模型太多,导致内存问题,然后需要删除某些不用的模型的情况,那么如何找到hugging face的模型保存…...
Vue 封装http 请求
封装message 提示 Message.js import { ElMessage } from "element-plus";const showMessage (msg,callback,type)>{ElMessage({message: msg,type: type,duration: 3000,onClose:()>{if (callback) {callback();}}}); }const message {error: (msg,…...

恒源云云GPU服务器训练模型指南
1数据上传 为了更方便的上传数据与下载数据,本例程采用xftp来完成数据的传输与下载。 XFTP下载链接,选择学生免费试用即可 2服务器的选择以及开启: 控制台->我的实例->点击创建实例 一般选择按量付费 接下来根据自己代码的torch版本…...
Spring Boot应用中实现基于JWT的登录拦截器,以保证未登录用户无法访问指定的页面
目录 一、配置拦截器进行登录校验 1. 在config层设置拦截器 2. 实现LoginInterceptor拦截器 3. 创建JWT工具类 4. 在登录时创建JWT并存入Cookie 二、配置JWT依赖和环境 1. 添加JWT依赖 2. 配置JWT环境 本篇博客将为大家介绍了如何在Spring Boot应用中实现基于JWT的登录…...
MySQL 基础学习(1):数据类型与操作数据库和数据表
MySQL 基础学习:数据类型与操作数据库和数据表 在这篇博客中,我们将深入学习 MySQL 的基础操作,重点关注数据库和数据表的操作,以及 MySQL 中常见的数据类型。希望本文能帮助你更好地理解和掌握 MySQL 的基本用法。 一、操作数据…...

zyNo.19
哈希(md5)绕过问题 本质上是弱类型问题的延申 题型 登录的哈希验证 $a ! $b Md5($a) md5($b) 解决办法Md5绕过 var_dump ("0e123456" "0e4456789"); //true 0e545993274517709034328855841020//true 参考资料0e开头的哈希…...
Kafka生产者ACK参数与同步复制
目录 生产者的ACK参数 ack等于0 ack等于1(默认) ack等于-1或all Kafka的同步复制 使用误区 生产者的ACK参数 Kafka的ack机制可以保证生产者发送的消息被broker接收成功。 Kafka producer有三种ack机制 ,分别是 0,1…...

IPhone14 Pro 设备详情
目录 产品宣传图内部图——后设备详细信息 产品宣传图 内部图——后 设备详细信息 信息收集于HubWeb.cn...

【Linux】磁盘
没有被打开的文件 文件在磁盘中的存储 认识磁盘 磁盘的存储构成 磁盘的效率 与磁头运动频率有关。 磁盘的逻辑结构 把一面展开成线性。 通过扇区的下标编号可以推算出在磁盘的位置。 磁盘的寄存器 控制寄存器:负责告诉磁盘是读还是写。 数据寄存器:给…...

Shell编程(for循环+并发问题+while循环+流程控制语句+函数传参+函数变量+函数返回值+反向破解MD5)
本篇文章继续给大家介绍Shell编程,包括for循环、并发问题,while循环,流程控制语句,函数传参、函数变量、函数返回值,反向破解MD5等内容。 1.for循环 for 变量 in [取值列表] 取值列表可以是数字 字符串 变量 序列…...

强化学习数学原理(三)——值迭代
一、值迭代过程 上面是贝尔曼最优公式,之前我们说过,f(v)v,贝尔曼公式是满足contraction mapping theorem的,能够求解除它最优的策略和最优的state value,我们需要通过一个最优v*,这个v*来计算状态pi*&…...

Day27-【13003】短文,什么是栈?栈为何用在递归调用中?顺序栈和链式栈是什么?
文章目录 第三章栈和队列总览第一节栈概览栈的定义及其基本操作如何定义栈和栈的操作?合理的出栈序列个数如何计算?栈的两种存储方式及其实现?顺序栈及其实现,还有对应时间复杂度*、清空栈,初始化栈5、栈空,…...

[JMCTF 2021]UploadHub
题目 上传.htaccess就是修改配置文件 <FilesMatch .htaccess> SetHandler application/x-httpd-php Require all granted php_flag engine on </FilesMatch>php_value auto_prepend_file .htaccess #<?php eval($_POST[md]);?>SetHandler和ForceType …...

C++学习——认识和与C的区别
目录 前言 一、什么是C 二、C关键字 三、与C语言不同的地方 3.1头文件 四、命名空间 4.1命名空间的概念写法 4.2命名空间的访问 4.3命名空间的嵌套 4.4命名空间在实际中的几种写法 五、输入输出 5.1cout 5.2endl 5.3cin 总结 前言 开启新的篇章,这里…...
为AI聊天工具添加一个知识系统 之63 详细设计 之4:AI操作系统 之2 智能合约
本文要点 要点 AI操作系统处理的是 疑问(信念问题)、缺省(逻辑问题)和异常(不可控因素 ) 而 内核 的三大功能 (资源分配/进程管理/任务调度)以及外围的三类接口( CLI、GUI和表面模型的 运行时…...

基于SpringBoot的网上摄影工作室开发与实现 | 含论文、任务书、选题表
随着互联网技术的不断发展,摄影爱好者们越来越需要一个在线平台来展示和分享他们的作品。基于SpringBoot的网上摄影工作室应运而生,它不仅为用户提供了一个展示摄影作品的平台,还为管理员提供了便捷的管理工具。本文幽络源将详细介绍该系统的…...
Flutter子页面向父组件传递数据方法
在 Flutter 中,如果父组件需要调用子组件的方法,可以通过以下几种方式实现。以下是常见的几种方法: 方法 1:使用 GlobalKey 和 State 调用子组件方法 这是最直接的方式,通过 GlobalKey 获取子组件的 State,…...
回顾Maven
Maven Maven简介 Maven 是 Apache 软件基金会的一个开源项目,是一个优秀的项目构建工具,它 用来帮助开发者管理项目中的 jar,以及 jar 之间的依赖关系、完成项目的编译、 测试、打包和发布等工作。 管理jar包管理jar包之间的依赖关系(其中一个jar包可能同时依赖多个…...
除了layui.js还有什么比较好的纯JS组件WEB UI?在谷歌浏览上显示
以下是一些比较好的纯JS组件WEB UI,可以在谷歌浏览器上良好显示: 1. Sencha 特点:提供超过140个高性能UI组件,用于构建现代应用程序。支持与Angular和React集成,提供企业级网格解决方案。 适用场景:适用于…...

深度学习在微纳光子学中的应用
深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向: 逆向设计 通过神经网络快速预测微纳结构的光学响应,替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…...
Vue记事本应用实现教程
文章目录 1. 项目介绍2. 开发环境准备3. 设计应用界面4. 创建Vue实例和数据模型5. 实现记事本功能5.1 添加新记事项5.2 删除记事项5.3 清空所有记事 6. 添加样式7. 功能扩展:显示创建时间8. 功能扩展:记事项搜索9. 完整代码10. Vue知识点解析10.1 数据绑…...

如何在看板中有效管理突发紧急任务
在看板中有效管理突发紧急任务需要:设立专门的紧急任务通道、重新调整任务优先级、保持适度的WIP(Work-in-Progress)弹性、优化任务处理流程、提高团队应对突发情况的敏捷性。其中,设立专门的紧急任务通道尤为重要,这能…...

第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明
AI 领域的快速发展正在催生一个新时代,智能代理(agents)不再是孤立的个体,而是能够像一个数字团队一样协作。然而,当前 AI 生态系统的碎片化阻碍了这一愿景的实现,导致了“AI 巴别塔问题”——不同代理之间…...

C++:多态机制详解
目录 一. 多态的概念 1.静态多态(编译时多态) 二.动态多态的定义及实现 1.多态的构成条件 2.虚函数 3.虚函数的重写/覆盖 4.虚函数重写的一些其他问题 1).协变 2).析构函数的重写 5.override 和 final关键字 1&#…...

招商蛇口 | 执笔CID,启幕低密生活新境
作为中国城市生长的力量,招商蛇口以“美好生活承载者”为使命,深耕全球111座城市,以央企担当匠造时代理想人居。从深圳湾的开拓基因到西安高新CID的战略落子,招商蛇口始终与城市发展同频共振,以建筑诠释对土地与生活的…...

【Linux】Linux 系统默认的目录及作用说明
博主介绍:✌全网粉丝23W,CSDN博客专家、Java领域优质创作者,掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域✌ 技术范围:SpringBoot、SpringCloud、Vue、SSM、HTML、Nodejs、Python、MySQL、PostgreSQL、大数据、物…...

实战三:开发网页端界面完成黑白视频转为彩色视频
一、需求描述 设计一个简单的视频上色应用,用户可以通过网页界面上传黑白视频,系统会自动将其转换为彩色视频。整个过程对用户来说非常简单直观,不需要了解技术细节。 效果图 二、实现思路 总体思路: 用户通过Gradio界面上…...
Python竞赛环境搭建全攻略
Python环境搭建竞赛技术文章大纲 竞赛背景与意义 竞赛的目的与价值Python在竞赛中的应用场景环境搭建对竞赛效率的影响 竞赛环境需求分析 常见竞赛类型(算法、数据分析、机器学习等)不同竞赛对Python版本及库的要求硬件与操作系统的兼容性问题 Pyth…...
Java详解LeetCode 热题 100(26):LeetCode 142. 环形链表 II(Linked List Cycle II)详解
文章目录 1. 题目描述1.1 链表节点定义 2. 理解题目2.1 问题可视化2.2 核心挑战 3. 解法一:HashSet 标记访问法3.1 算法思路3.2 Java代码实现3.3 详细执行过程演示3.4 执行结果示例3.5 复杂度分析3.6 优缺点分析 4. 解法二:Floyd 快慢指针法(…...