当前位置: 首页 > news >正文

十四、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的用户管理

文章目录 一、用户管理二、用户&#xff08;一&#xff09;用户信息&#xff08;二&#xff09;创建用户1.语法&#xff1a;2.案例&#xff1a; &#xff08;三&#xff09; 删除用户1.语法&#xff1a;2.示例&#xff1a; &#xff08;四&#xff09;修改用户密码1.语法&#…...

01.自动化交易综述

算法交易的概念&#xff1a; 利用自动化平台&#xff0c;执行预先设置的一系列规则完成交易行为。 算法交易的优势 1.历史数据评估 2.执行高效 3.无主观情绪输入 4.可度量评价 5.交易频率 算法交易的劣势 1.成本&#xff0c;成本低难以体现收益 2.技巧 算法交易流程 大前…...

基于SpringBoot的网上超市系统的设计与实现

目录 前言 一、技术栈 二、系统功能介绍 管理员功能实现 用户功能实现 三、核心代码 1、登录模块 2、文件上传模块 3、代码封装 前言 网络技术和计算机技术发展至今&#xff0c;已经拥有了深厚的理论基础&#xff0c;并在现实中进行了充分运用&#xff0c;尤其是基于计…...

国内首家!阿里云 Elasticsearch 8.9 版本释放 AI 搜索新动能

简介&#xff1a; 阿里云作为国内首家上线 Elasticsearch 8.9版本的厂商&#xff0c;在提供 Elasticsearch Relevance Engine™ (ESRE™) 引擎的基础上&#xff0c;提供增强 AI 的最佳实践与 ES 本身的混合搜索能力&#xff0c;为用户带来了更多创新和探索的可能性。 近年来&a…...

uniapp获取一周日期和星期

UniApp可以使用JavaScript中的Date对象来获取当前日期和星期几。以下是一个示例代码&#xff0c;可以获取当前日期和星期几&#xff0c;并输出在一周内的每天早上和晚上&#xff1a; // 获取当前日期和星期 let date new Date(); let weekdays ["Sunday", "M…...

QT之QListWidget的介绍

QListWidget常用成员函数 1、成员函数介绍2、例子显示图片和按钮的例子 1、成员函数介绍 1)QListWidget(QWidget *parent nullptr) 构造函数&#xff0c;创建一个新的QListWidget对象。 2)void addItem(const QString &label) 在列表末尾添加一个项目&#xff0c;项目标…...

数据结构--排序(1)

文章目录 排序概念直接插入排序希尔排序冒泡排序堆排序选择排序验证不同排序的运行时间 排序概念 排序指的是通过某一特征关键字&#xff08;如信息量大小&#xff0c;首字母等&#xff09;来对一连串的数据进行重新排列的操作&#xff0c;实现递增或者递减的数据排序。 稳定…...

【AI视野·今日NLP 自然语言处理论文速览 第三十七期】Thu, 21 Sep 2023

AI视野今日CS.NLP 自然语言处理论文速览 Thu, 21 Sep 2023 Totally 57 papers &#x1f449;上期速览✈更多精彩请移步主页 Daily Computation and Language Papers Chain-of-Verification Reduces Hallucination in Large Language Models Authors Shehzaad Dhuliawala, Mojt…...

高防服务器防护效果怎么样?

对于很多拥有在线业务的公司&#xff0c;数据是非常重要&#xff0c;如果遭到网络攻击会导致很严重的后果&#xff0c;所以很多公司选择高防服务器&#xff0c;那么高防服务器防护效果是怎么样的呢&#xff1f;今天就让小编带大家看一看吧&#xff01; 弹性带宽。高防服务器一…...

tomcat架构概览

https://blog.csdn.net/ldw201510803006/article/details/119880100 前言 Tomcat 要实现 2 个核心功能&#xff1a; 处理 Socket 连接&#xff0c;负责网络字节流与 Request 和 Response 对象的转化。加载和管理 Servlet&#xff0c;以及具体处理 Request 请求。 因此 Tomc…...

海康的资料

系列文章目录 文章目录 系列文章目录前言一、海康二、使用步骤1.引入库2.读入数据 总结 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; 例如&#xff1a;随着人工智能的不断发展&#xff0c;机器学习这门技术也越来越重要&#xff0c;很多人都开启了学…...

【ELFK】之消息队列kafka

本章结构&#xff1a; 1、为什么要使用消息队列MQ 2、使用消息队列的好处 3、消息队列的两种模式 4、对Kafka的概述 5、Kafka的特性 6、Kafka的系统架构 7、部署Kafka Kafka 定义 Kafka 是一个分布式的基于发布/订阅模式的消息队列&#xff08;MQ&#xff0c;Message Qu…...

Qt核心:元对象系统、属性系统、对象树、信号槽

一、元对象系统 1、Qt 的元对象系统提供的功能有&#xff1a;对象间通信的信号和槽机制、运行时类型信息和动态属性系统等。 2、元对象系统是 Qt 对原有的 C进行的一些扩展&#xff0c;主要是为实现信号和槽机制而引入的&#xff0c; 信号和槽机制是 Qt 的核心特征。 3、要使…...

【若依框架2】前后端分离版本添加功能页

在VSCode的src/views下新建个文件平example,在example下创建test文件夹&#xff0c;在test里创建index.vue文件 <template> <h1>Hello world</h1> </template><script> export default {name: "index" } </script><style s…...

Unity Bolt模块间通信

使用Bolt无代码设计开发的时候&#xff0c;我们不能简单的认为只需要一个FlowMachine就可以完成所有流程的开发。我们需要不同的模块进行拆分&#xff0c;以便更好的管理和协作。这就需要不同模块之间的通信处理。经过研究与使用&#xff0c;将常用的通信方式总结如下&#xff…...

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系统是指由中国企业自主研发的商业智能&#xff08;BI&#xff09;系统&#xff0c;这类系统更加了解中国企业的数据分析需求&#xff0c;能够提供更加贴合实际的解决方案。比如说奥威BI系统就是典型的国产自研&#xff0c;不仅了解中国企业的数据分析需求&#xff0…...

基于Java的高校竞赛管理系统设计与实现(亮点:发起比赛、报名、审核、评委打分、获奖排名,可随意更换主题如蓝桥杯、ACM、王者荣耀、吃鸡等竞赛)

高校竞赛管理系统 一、前言二、我的优势2.1 自己的网站2.2 自己的小程序&#xff08;小蔡coding&#xff09;2.3 有保障的售后2.4 福利 三、开发环境与技术3.1 MySQL数据库3.2 Vue前端技术3.3 Spring Boot框架3.4 微信小程序 四、功能设计4.1 主要功能描述4.2 系统角色 五、系统…...

出血性脑卒中临床智能诊疗建模

先说下数据&#xff0c;随访流水号是患者的后续诊断号码&#xff0c;表3有对应的数据&#xff0c;首先需要做下数据整理&#xff0c;需要整理出每次诊断的指标&#xff08;包括表1中人物信息、表2中的检查指标以及表3中的检查指标&#xff0c;表4中有对应的时间&#xff0c;以刚…...

Cesium 空间量算——生成点位坐标

文章目录 需求分析1. 点击坐标点实现2. 输入坐标实现 需求 用 Cesium 生成点位坐标&#xff0c;并明显标识 分析 以下是我的两种实现方式 第一种是坐标点击实现 第二种是输入坐标实现 1. 点击坐标点实现 //点位坐标getLocation() {this.hoverIndex 0;let that this;this.view…...

为什么曲面函数的偏导数可以表示其曲面的法向量?

为什么曲面函数的偏导数可以表示其曲面的法向量&#xff1f; 引用资料&#xff1a; 1.知乎shinbade&#xff1a;曲面的三个偏导数为什么能表示法向量&#xff1f; 2.Geogebra羅驥韡 (Pegasus Roe)&#xff1a;偏導數、切平面、梯度 曲面 F ( x , y , z ) 0 F(x,y,z)0 F(x,y,…...

❤Uniapp报npx update-browserslist-db@latest

❤ Uniapp报npx update-browserslist-dblatest 按照提示先更新一下 npx update-browserslist-dblatest然后打开一下端口...

【C++】静态成员函数 ( 静态成员函数概念 | 静态成员函数声明 | 静态成员函数访问 | 静态成员函数只能访问静态成员 )

文章目录 一、静态成员函数简介1、静态成员函数概念2、静态成员函数声明3、静态成员函数访问4、静态成员函数只能访问静态成员 二、代码示例 - 静态成员函数 一、静态成员函数简介 1、静态成员函数概念 静态成员函数归属 : 在 C 类中 , 静态成员函数 是一种 特殊的函数 , 该函数…...

基于若依ruoyi-nbcio增加flowable流程待办消息的提醒,并提供右上角的红字数字提醒(三)

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码&#xff1a; https://gitee.com/nbacheng/ruoyi-nbcio 演示地址&#xff1a;RuoYi-Nbcio后台管理系统 1、上一节说到RedisReceiver &#xff0c;这里有调用了NbcioRedisListener自定义业务监听&#xff0c;如下…...

用友第五届开发者大赛初赛晋级公示,复赛火热进行中!

用友第五届开发者大赛初赛晋级公示&#xff0c;复赛火热进行中&#xff01; 自7月13日鸣锣揭幕&#xff0c;9月6日各赛道作品初评工作完成&#xff0c;历时近两月&#xff0c;用友第五届企业云服务开发者大赛初赛阶段顺利落下帷幕。作为备受各界开发者关注的赛事&#xff0c;本…...

SSL证书如何做到保障网站安全?

当网站显示不安全时&#xff0c;用户会在头脑中产生该网站是否合法的疑问&#xff0c;如果是购物网站或者购物商城&#xff0c;那意味着可能会损失大部分的用户。而SSL证书能有效保障网站的安全性&#xff0c;轻松解决网站不被用户信任的问题。那么&#xff0c;SSL证书究竟是如…...

C# Onnx Yolov8 Detect Poker 扑克牌识别

效果 项目 代码 using Microsoft.ML.OnnxRuntime; using Microsoft.ML.OnnxRuntime.Tensors; using OpenCvSharp; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System…...

想要精通算法和SQL的成长之路 - 最长等差数列

想要精通算法和SQL的成长之路 - 最长等差数列 前言一. 最长等差数列 前言 想要精通算法和SQL的成长之路 - 系列导航 一. 最长等差数列 原题链接 思路&#xff1a; 我们假设dp[i][j] 为&#xff1a;以num[i]为结尾&#xff0c;以j为公差的最长等差子序列的长度。由此可知&a…...

【简单的自动曝光】python实现-附ChatGPT解析

1.题目 一个图像有 n 个像素点,存储在一个长度为 n 的数组 img 里, 每个像素点的取值范围[0,255] 的正整数。 请你给图像每个像素点值,加上一个整数 k (可以是负数),得到新图 newImg , 使得新图newImg 的所有像素平均值最接近中位值 128。 请输出这个整数 k。 输入描述 n …...

网工内推 | 运维工程师,CCNP认证优先,周末双休,多次调薪机会

01 驻场运维 职责描述&#xff1a; 1、驻场某大型汽车整车厂&#xff0c;配合客户完成网络相关&#xff08;路由交换&#xff09;的项目。 2、按照客户要求&#xff0c;与项目组配合共同完成项目前期调研&#xff0c;设计&#xff0c;规划&#xff0c;项目中期调试测试&#…...

做外贸有哪些网站/站长工具平台

惠州正规的冰箱面板联系方式&#xff0c;环宇新型材料&#xff0c;佛山市环宇新型材料有限公司成立于2010年2月&#xff0c;公司座落于交通便利、位置优越、环境优美的广东省佛山市三水区西南工业园C区。惠州正规的冰箱面板联系方式&#xff0c; PCM冰箱面板、PVC冰箱面板、VCM…...

资海集团网站建设/网站怎么做外链

Mybatis通用Mapper极其方便的使用Mybatis单表的增删改查 2.2.0 新增SqlMapper&#xff0c;可以使用MyBatis直接执行sql&#xff0c;详细文档2.2.0版本之后&#xff0c;通过SqlMapper可以支持多表的操作&#xff0c;但是需要在代码中直接写SQL。 即使不使用通用mapper&#xff0…...

自己如何搭建网站/微信营销软件排行榜

转自https://www.cnblogs.com/subconscious/p/4660952.html 一.前言 今天继续我们EasyPR的开发详解。 这几个月我收到了不少的邮件问&#xff1a;为什么EasyPR开发详解教程中只有车牌定位的部分&#xff0c;而没有字符识别的部分&#xff1f; 这个原因一是由于整个开发详解是按…...

一个ip做几个网站/网站申请流程

背景 首先我是个菜鸡&#xff0c;工资也低的一笔。 刚毕业时候在一家国企上班干 app 开发&#xff0c;干了快两年的时候&#xff0c;跳槽到了一家伪大厂干安全。投了不少简历都没有回音&#xff0c;只有这加伪大厂要我就来了。当时说好了会接触一些底层的东西&#xff0c;然而…...

河南省城乡和住房建设厅/班级优化大师是干什么用的

目录概念&#xff1a;通俗理解&#xff1a;可重入锁的工作原理&#xff1a;ReenTrantLock可重入锁和synchronized的区别&#xff1a;ReentrantLock源码分析:可重入锁代码演示&#xff1a;概念&#xff1a; Reentrant Re entrant&#xff0c;Re是重复、又、再的意思&#xff0…...

mobile wordpress.org/社区推广

ubuntu12.04&#xff08;32位&#xff09;下TQ2440开发板环境搭建 Step 1.安装arm-linux-gcc交叉编译器 这里我使用的是天嵌tq2440光盘下的EABI-4.3.3_EmbedSky_20100610.tar.bz2安装包。 1、在根目录下解压EABI-4.3.3_EmbedSky_20100610.tar.bz2sudo tar -xvfEABI-4.3.3_Embe…...