十四、MySql的用户管理
文章目录
- 一、用户管理
- 二、用户
- (一)用户信息
- (二)创建用户
- 1.语法:
- 2.案例:
- (三) 删除用户
- 1.语法:
- 2.示例:
- (四)修改用户密码
- 1.语法:
- 三、数据库的权限
- (一)给用户授权
- 1.语法
- 2.说明
- 3.案例:
- (二) 回收权限
- 1.语法:
- 2.示例:
一、用户管理
如果我们只能使用root用户,这样存在安全隐患。这时,就需要使用MySQL的用户管理。

二、用户
(一)用户信息
MySQL中的用户,都存储在系统数据库mysql的user表中。
mysql> use mysql;
Database changed
mysql> select host,user,authentication_string from user;

字段解释:
- host: 表示这个用户可以从哪个主机登陆,如果是localhost,表示只能从本机登陆
- user: 用户名
- authentication_string: 用户密码通过password函数加密后的
- *_priv: 用户拥有的权限
(二)创建用户
1.语法:
create user '用户名'@'登陆主机/ip' identified by '密码';
2.案例:
mysql> create user 'whb'@'localhost' identified by '12345678';
Query OK, 0 rows affected (0.06 sec)
mysql> select user,host,authentication_string from user;
+---------------+-----------+-------------------------------------------+
| user | host | authentication_string |
+---------------+-----------+-------------------------------------------+
| root | % | *A2F7C9D334175DE9AF4DB4F5473E0BD0F5FA9E75|
| mysql.session | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE|
| mysql.sys | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE|
| mt | localhost | *84AAC12F54AB666ECFC2A83C676908C8BBC381B1| --新增用户
+---------------+-----------+-------------------------------------------+
4 rows in set (0.00 sec)
-- 此时便可以使用新账号新密码进行登陆啦
--备注:可能实际在设置密码的时候,因为mysql本身的认证等级比较高,一些简单的密码无法设置,会爆出
如下报错:
-- ERROR 1819 (HY000): Your password does not satisfy the current policy
requirements
-- 解决方案:https://blog.csdn.net/zhanaolu4821/article/details/93622812
--查看密码设置相关要求:SHOW VARIABLES LIKE 'validate_password%';
(三) 删除用户
1.语法:
drop user '用户名'@'主机名'
2.示例:
mysql> select user,host,authentication_string from user;
mysql> select user,host,authentication_string from user;
+---------------+-----------+-------------------------------------------+
| user | host | authentication_string |
+---------------+-----------+-------------------------------------------+
| root | % | *A2F7C9D334175DE9AF4DB4F5473E0BD0F5FA9E75|
| mysql.session | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE|
| mysql.sys | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE|
| mt | localhost | *84AAC12F54AB666ECFC2A83C676908C8BBC381B1| --新增用户
+---------------+-----------+-------------------------------------------+
4 rows in set (0.00 sec)
mysql> drop user whb; --尝试删除
ERROR 1396 (HY000): Operation DROP USER failed for 'mt'@'%' -- <= 直接给个用户名,
不能删除,它默认是%,表示所有地方可以登陆的用户
mysql> drop user 'mt'@'localhost'; --删除用户
Query OK, 0 rows affected (0.00 sec)
+---------------+-----------+-------------------------------------------+
| user | host | authentication_string |
+---------------+-----------+-------------------------------------------+
| root | % | *A2F7C9D334175DE9AF4DB4F5473E0BD0F5FA9E75|
| mysql.session | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE|
| mysql.sys | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE|
| mt | localhost | *84AAC12F54AB666ECFC2A83C676908C8BBC381B1| --新增用户
+---------------+-----------+-------------------------------------------+
4 rows in set (0.00 sec)
(四)修改用户密码
1.语法:
- 自己改自己密码
set password=password('新的密码');
- root用户修改指定用户的密码
set password for '用户名'@'主机名'=password('新的密码');
mysql> select host,user, authentication_string from user;
+---------------+-----------+-------------------------------------------+
| user | host | authentication_string |
+---------------+-----------+-------------------------------------------+
| root | % | *A2F7C9D334175DE9AF4DB4F5473E0BD0F5FA9E75|
| mysql.session | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE|
| mysql.sys | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE|
| mt | localhost | *84AAC12F54AB666ECFC2A83C676908C8BBC381B1| --新增用户
+---------------+-----------+-------------------------------------------+
4 rows in set (0.00 sec)
mysql> set password for 'mt'@'localhost'=password('87654321');
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> select host,user, authentication_string from user;`+---------------+-----------+-------------------------------------------+
| user | host | authentication_string |
+---------------+-----------+-------------------------------------------+
| root | % | *A2F7C9D334175DE9AF4DB4F5473E0BD0F5FA9E75|
| mysql.session | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE|
| mysql.sys | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE|
| mt | localhost | *5D24C4D94238E65A6407DFAB95AA4EA97CA2B199| --新增用户
+---------------+-----------+-------------------------------------------+
4 rows in set (0.00 sec)`
三、数据库的权限
MySQL数据库提供的权限列表:

(一)给用户授权
刚创建的用户没有任何权限。需要给用户授权。
1.语法
grant 权限列表 on 库.对象名 to '用户名'@'登陆位置' [identified by '密码']
2.说明
- 权限列表,多个权限用逗号分开
grant select on ...
grant select, delete, create on ....
grant all [privileges] on ... -- 表示赋予该用户在该对象上的所有权限
- . : 代表本系统中的所有数据库的所有对象(表,视图,存储过程等)
- 库.* : 表示某个数据库中的所有数据对象(表,视图,存储过程等)
- identified by可选。 如果用户存在,赋予权限的同时修改密码,如果该用户不存在,就是创建用户
3.案例:
--使用root账号
--终端A
mysql> show databases;

--给用户whb赋予test数据库下所有文件的select权限
mysql> grant select on test.* to 'whb'@'localhost';
Query OK, 0 rows affected (0.01 sec)
--使用whb账号
--终端B
(二) 回收权限
1.语法:
revoke 权限列表 on 库.对象名 from '用户名'@'登陆位置';
2.示例:
-- 回收mt对test数据库的所有权限
--root身份,终端A
mysql> revoke all on test.* from 'mt'@'localhost';
Query OK, 0 rows affected (0.00 sec)
相关文章:
十四、MySql的用户管理
文章目录 一、用户管理二、用户(一)用户信息(二)创建用户1.语法:2.案例: (三) 删除用户1.语法:2.示例: (四)修改用户密码1.语法&#…...
01.自动化交易综述
算法交易的概念: 利用自动化平台,执行预先设置的一系列规则完成交易行为。 算法交易的优势 1.历史数据评估 2.执行高效 3.无主观情绪输入 4.可度量评价 5.交易频率 算法交易的劣势 1.成本,成本低难以体现收益 2.技巧 算法交易流程 大前…...
基于SpringBoot的网上超市系统的设计与实现
目录 前言 一、技术栈 二、系统功能介绍 管理员功能实现 用户功能实现 三、核心代码 1、登录模块 2、文件上传模块 3、代码封装 前言 网络技术和计算机技术发展至今,已经拥有了深厚的理论基础,并在现实中进行了充分运用,尤其是基于计…...
国内首家!阿里云 Elasticsearch 8.9 版本释放 AI 搜索新动能
简介: 阿里云作为国内首家上线 Elasticsearch 8.9版本的厂商,在提供 Elasticsearch Relevance Engine™ (ESRE™) 引擎的基础上,提供增强 AI 的最佳实践与 ES 本身的混合搜索能力,为用户带来了更多创新和探索的可能性。 近年来&a…...
uniapp获取一周日期和星期
UniApp可以使用JavaScript中的Date对象来获取当前日期和星期几。以下是一个示例代码,可以获取当前日期和星期几,并输出在一周内的每天早上和晚上: // 获取当前日期和星期 let date new Date(); let weekdays ["Sunday", "M…...
QT之QListWidget的介绍
QListWidget常用成员函数 1、成员函数介绍2、例子显示图片和按钮的例子 1、成员函数介绍 1)QListWidget(QWidget *parent nullptr) 构造函数,创建一个新的QListWidget对象。 2)void addItem(const QString &label) 在列表末尾添加一个项目,项目标…...
数据结构--排序(1)
文章目录 排序概念直接插入排序希尔排序冒泡排序堆排序选择排序验证不同排序的运行时间 排序概念 排序指的是通过某一特征关键字(如信息量大小,首字母等)来对一连串的数据进行重新排列的操作,实现递增或者递减的数据排序。 稳定…...
【AI视野·今日NLP 自然语言处理论文速览 第三十七期】Thu, 21 Sep 2023
AI视野今日CS.NLP 自然语言处理论文速览 Thu, 21 Sep 2023 Totally 57 papers 👉上期速览✈更多精彩请移步主页 Daily Computation and Language Papers Chain-of-Verification Reduces Hallucination in Large Language Models Authors Shehzaad Dhuliawala, Mojt…...
高防服务器防护效果怎么样?
对于很多拥有在线业务的公司,数据是非常重要,如果遭到网络攻击会导致很严重的后果,所以很多公司选择高防服务器,那么高防服务器防护效果是怎么样的呢?今天就让小编带大家看一看吧! 弹性带宽。高防服务器一…...
tomcat架构概览
https://blog.csdn.net/ldw201510803006/article/details/119880100 前言 Tomcat 要实现 2 个核心功能: 处理 Socket 连接,负责网络字节流与 Request 和 Response 对象的转化。加载和管理 Servlet,以及具体处理 Request 请求。 因此 Tomc…...
海康的资料
系列文章目录 文章目录 系列文章目录前言一、海康二、使用步骤1.引入库2.读入数据 总结 前言 提示:这里可以添加本文要记录的大概内容: 例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学…...
【ELFK】之消息队列kafka
本章结构: 1、为什么要使用消息队列MQ 2、使用消息队列的好处 3、消息队列的两种模式 4、对Kafka的概述 5、Kafka的特性 6、Kafka的系统架构 7、部署Kafka Kafka 定义 Kafka 是一个分布式的基于发布/订阅模式的消息队列(MQ,Message Qu…...
Qt核心:元对象系统、属性系统、对象树、信号槽
一、元对象系统 1、Qt 的元对象系统提供的功能有:对象间通信的信号和槽机制、运行时类型信息和动态属性系统等。 2、元对象系统是 Qt 对原有的 C进行的一些扩展,主要是为实现信号和槽机制而引入的, 信号和槽机制是 Qt 的核心特征。 3、要使…...
【若依框架2】前后端分离版本添加功能页
在VSCode的src/views下新建个文件平example,在example下创建test文件夹,在test里创建index.vue文件 <template> <h1>Hello world</h1> </template><script> export default {name: "index" } </script><style s…...
Unity Bolt模块间通信
使用Bolt无代码设计开发的时候,我们不能简单的认为只需要一个FlowMachine就可以完成所有流程的开发。我们需要不同的模块进行拆分,以便更好的管理和协作。这就需要不同模块之间的通信处理。经过研究与使用,将常用的通信方式总结如下ÿ…...
please choose a certificate and try again.(-5)报错怎么解决
the server you want to connect to requests identification,please choose a certificate and try again.(-5)...
国产自研BI系统,更懂中国企业数据分析需求
国产自研BI系统是指由中国企业自主研发的商业智能(BI)系统,这类系统更加了解中国企业的数据分析需求,能够提供更加贴合实际的解决方案。比如说奥威BI系统就是典型的国产自研,不仅了解中国企业的数据分析需求࿰…...
基于Java的高校竞赛管理系统设计与实现(亮点:发起比赛、报名、审核、评委打分、获奖排名,可随意更换主题如蓝桥杯、ACM、王者荣耀、吃鸡等竞赛)
高校竞赛管理系统 一、前言二、我的优势2.1 自己的网站2.2 自己的小程序(小蔡coding)2.3 有保障的售后2.4 福利 三、开发环境与技术3.1 MySQL数据库3.2 Vue前端技术3.3 Spring Boot框架3.4 微信小程序 四、功能设计4.1 主要功能描述4.2 系统角色 五、系统…...
出血性脑卒中临床智能诊疗建模
先说下数据,随访流水号是患者的后续诊断号码,表3有对应的数据,首先需要做下数据整理,需要整理出每次诊断的指标(包括表1中人物信息、表2中的检查指标以及表3中的检查指标,表4中有对应的时间,以刚…...
Cesium 空间量算——生成点位坐标
文章目录 需求分析1. 点击坐标点实现2. 输入坐标实现 需求 用 Cesium 生成点位坐标,并明显标识 分析 以下是我的两种实现方式 第一种是坐标点击实现 第二种是输入坐标实现 1. 点击坐标点实现 //点位坐标getLocation() {this.hoverIndex 0;let that this;this.view…...
从Address Editor入手:在Block Design中精准调整Bram存储深度的实战解析
1. 当Bram存储深度无法修改时,你该怎么做? 第一次在Vivado中使用Block Design搭建系统时,很多人都会遇到一个奇怪的现象:明明在Bram IP核的参数设置界面看到了"Depth"这个选项,但无论如何点击都无法修改。这…...
Thorium浏览器架构深度解析:基于Chromium的极致性能优化实践
Thorium浏览器架构深度解析:基于Chromium的极致性能优化实践 【免费下载链接】thorium Chromium fork named after radioactive element No. 90. Windows and MacOS/Raspi/Android/Special builds are in different repositories, links are towards the top of the…...
百度网盘提取码智能获取工具:提升资源访问效率的技术方案
百度网盘提取码智能获取工具:提升资源访问效率的技术方案 【免费下载链接】baidupankey 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 核心价值:重新定义资源访问效率 🚀 在信息快速流转的今天,获取网络资源…...
对抗训练新玩法:用AdverIN攻击自己反而提升医学分割模型20%泛化性
医学影像分割的对抗训练革命:AdverIN如何让模型在新设备上表现更优 医学影像分析领域正面临一个尴尬的现实:实验室里表现优异的深度学习模型,在真实临床环境中常常"水土不服"。不同医院使用的扫描设备、成像协议差异导致的域偏移&a…...
用Mermaid Live Editor 5分钟搞定技术图表:从零开始的完整实战指南
用Mermaid Live Editor 5分钟搞定技术图表:从零开始的完整实战指南 【免费下载链接】mermaid-live-editor Edit, preview and share mermaid charts/diagrams. New implementation of the live editor. 项目地址: https://gitcode.com/GitHub_Trending/me/mermaid…...
SDMatte效果对比图谱:SDMatte/RemBG/BackgroundMattingV2在玻璃场景PK
SDMatte效果对比图谱:SDMatte/RemBG/BackgroundMattingV2在玻璃场景PK 1. 引言:玻璃抠图的特殊挑战 玻璃材质因其透明和反光特性,一直是图像抠图领域最具挑战性的对象之一。传统抠图工具在处理玻璃制品时,往往会出现边缘断裂、透…...
告别“金鱼记忆”:Hologres + Mem0,为大模型打造企业级长记忆引擎
想象一下这个场景:一位用户在周一联系某电商平台的智能客服,咨询了一款高端相机的详细参数和优惠活动,并明确表示“我倾向于购买A品牌”。客服助手热情地解答了问题。到了周三,这位用户再次联系客服,想了解这款相机的配…...
5G赋能下的车联网协同感知:自动驾驶感知盲区消除新思路
1. 为什么自动驾驶需要"组队开黑"模式? 想象一下你开车经过一个十字路口,左侧突然冲出一辆外卖电动车——这是典型的A柱盲区问题。传统自动驾驶就像闭着眼睛打游戏,全靠本车传感器"听声辨位"。而5G车联网协同感知&#x…...
cobalt家谱研究者助手:家族历史与档案管理方案
cobalt家谱研究者助手:家族历史与档案管理方案 引言:家谱研究的数字时代痛点与解决方案 你是否还在为散乱的家族史料整理而困扰?是否经历过珍贵的口述历史随时间流逝而湮灭?cobalt家谱研究者助手(家族历史与档案管理方…...
HunyuanVideo-Foley开发者指南:API封装、批量生成与二次开发接口详解
HunyuanVideo-Foley开发者指南:API封装、批量生成与二次开发接口详解 1. 镜像概述与环境准备 1.1 核心功能与硬件要求 HunyuanVideo-Foley是一款集视频生成与AI音效生成于一体的专业工具,本镜像针对RTX 4090D 24GB显卡进行了深度优化。主要功能包括&a…...
