【2024】MySQL账户管理

当前MySQL版本为:

mysql> select version();
+-----------+
| version() |
+-----------+
| 8.4.2     |
+-----------+
1 row in set (0.01 sec)

目录

  • 创建普通用户
  • 为用户授权
  • 查看用户权限
  • 修改用户权限
  • 修改用户密码
  • 删除用户

创建普通用户

使用CREATE USER语句创建用户

mysql> CREATE USER 'user01'@'localhost' IDENTIFIED BY '1qaz@WSX';
Query OK, 0 rows affected (1.01 sec)

此sql是创建一个user01的本地用户,密码为1qaz@WSX。

注意确保安全性,密码最好采用8位以上包含大写字母、小写字母、数字和特殊字符。

限制用户连接来源,如本例中的localhost,只允许本地登录;或指定某个某些个IP可登录。

除此之外创建用户时还可以使用加密连接和设置密码过期时间:

  • REQUIRE SSL:指定用户必须使用SSL连接
  • PASSWORD EXPIRE INTERVAL 90 DAY:设置密码过期时间为90天
ALTER USER 'user02'@'192.168.10.%' PASSWORD EXPIRE INTERVAL 90 DAY;

为用户授权

MySQL支持在创建用户后为用户赋予相应的权限,比如对数据库的查询、修改等权限。

在MySQL中使用GRANT语句为用户授权。

使用GRANT语句也可以创建用户,但是不建议,建议使用CREATE USER语句创建用户

常见权限主要分为以下:

  • 数据库级别权限:
CREATE:创建数据库
ALTER:修改数据库
DROP:删除数据库
SELECT:读取数据库中表数据
INSERT:向数据库中表插入数据
UPDATE:更新数据库中表数据
DELETE:删除数据库中表数据
  • 表级别权限
CREATE TABLE:创建表
ALTER TABLE:修改表
DROP TABLE:删除表
  • 其他
ALL PRIVILEGES:所有权限

示例:

  • 授予用户user03对database01库的所有权限
GRANT ALL PRIVILEGES ON database01.* TO 'user03'@'host';
  • 授予用户对特定数据库的只读权限
GRANT SELECT ON database_name.* TO 'username'@'host';
  • 授予用户对特定表的插入和更新权限
GRANT INSERT, UPDATE ON database_name.table_name TO 'username'@'host';

查看用户权限

在 MySQL 中,用户信息存储在mysql.user表中。可以通过查询该表来获取有哪些用户

mysql>    SELECT user, host FROM mysql.user;
+------------------+-----------+
| user             | host      |
+------------------+-----------+
| mysql.infoschema | localhost |
| mysql.session    | localhost |
| mysql.sys        | localhost |
| root             | localhost |
| user01           | localhost |
+------------------+-----------+
5 rows in set (0.01 sec)

使用SHOW GRANTS语句来查看特定用户的权限。

mysql> SHOW GRANTS FOR 'user01'@'localhost';
+--------------------------------------------+
| Grants for user01@localhost                |
+--------------------------------------------+
| GRANT USAGE ON *.* TO `user01`@`localhost` |
+--------------------------------------------+
1 row in set (0.01 sec)

由于未给user01用户授权,所以看不到权限。

修改用户权限

在 MySQL 中可以使用 GRANTREVOKE语句来修改原有用户的权限。

使用GRANT语句添加权限:

给用户 user1 在数据库 mydb 上添加 INSERT 和 UPDATE 权限

GRANT INSERT, UPDATE ON mydb.* TO 'user1'@'localhost';

使用REVOKE语句撤销权限:

撤销用户 user1 在数据库 mydb 上的 DELETE 权限

REVOKE DELETE ON mydb.* FROM 'user1'@'localhost';

注意:做这些动作时,确保你有足够的权限来操作。

修改用户密码

在 MySQL 中可以使用ALTER USER方法来修改用户密码(进入MySQL中)

使用ALTER USER语句将user01密码改为12#¥qwER

mysql> ALTER USER 'user01'@'localhost' IDENTIFIED BY '12#$qwER';
Query OK, 0 rows affected (1.02 sec)

删除用户

在 MySQL 中可以使用DROP USER语句来删除用户。

DROP USER 'username'@'host';

删除前要确保其用户是真的用不到的。

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

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

相关文章

【Python报错已解决】To update, run: python.exe -m pip install --upgrade pip

🎬 鸽芷咕:个人主页 🔥 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想,就是为了理想的生活! 专栏介绍 在软件开发和日常使用中,BUG是不可避免的。本专栏致力于为广大开发者和技术爱好者提供一个关于BUG解决的经…

Unity之FPS

目录 🎮MouseLook摄像机旋转脚本 🎮PickUpItem武器拾取脚本 🎮PlayerController玩家控制器 🎮Inventory武器库 🎮Weapon武器抽象类 🎮Weapon_AutomaticGun武器脚本 其实这个教程很早就收藏了就是被20…

HarmonyOS Next开发----使用XComponent自定义绘制

XComponent组件作为一种绘制组件,通常用于满足用户复杂的自定义绘制需求,其主要有两种类型"surface和component。对于surface类型可以将相关数据传入XComponent单独拥有的NativeWindow来渲染画面。 由于上层UI是采用arkTS开发,那么想要…

鸿蒙手势交互(四:多层手势)

四、多层手势 指父子组件嵌套时,父子组件均绑定了手势或事件。有两种,一种默认多层级手势事件,一种自定义多层级手势事件。 默认多层级手势事件:需要分清两个概念,触摸事件,手势与事件 触摸事件&#xf…

Parallels Desktop 20 for Mac中文版发布了?会哪些新功能

Parallels Desktop 20 for Mac 正式发布,完全支持 macOS Sequoia 和 Windows 11 24H2,并且在企业版中引入了全新的管理门户。 据介绍,新版本针对 Windows、macOS 和 Linux 虚拟机进行了大量更新,最大的亮点是全新推出的 Parallels…

智慧火灾应急救援航拍检测数据集(无人机视角)

智慧火灾应急救援。 无人机,直升机等航拍视角下火灾应急救援检测数据集,数据分别标注了火,人,车辆这三个要素内容,29810张高清航拍影像,共31GB,适合森林防火,应急救援等方向的学术研…

【C++ Primer Plus习题】16.10

大家好,这里是国中之林! ❥前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站。有兴趣的可以点点进去看看← 问题: 解答: #include <iostream> #include <string> #include <…

高质量的翻译:应用程序可用性和成功的关键

在日益全球化的应用市场中&#xff0c;开发一款优秀的产品只是成功的一半。另一半&#xff1f;确保你的用户&#xff0c;无论他们在哪里或说什么语言&#xff0c;都能无缝理解和使用它。这就是高质量翻译的用武之地——不是事后的想法&#xff0c;而是应用程序可用性和最终成功…

2-100 基于matlab的水果识别

基于matlab的水果识别。从面积特征、似圆形特征&#xff0c;颜色(rgb值和hsv值)特征对图像中的梨子、苹果、桃子、香蕉和菠萝进行特征提取&#xff0c;边缘检测识别&#xff0c;最后按照筛选出来的特征对水果进行识别。程序已调通&#xff0c;可直接运行。 下载源程序请点链接…

一天认识一个硬件之连接线

我们在日常工作生活中经常会用到许多连接线&#xff0c;比如视频线&#xff0c;USB线&#xff0c;但是他们的区别在哪里&#xff0c;可能太不清楚&#xff0c;今天就来给大家分享一下。 HDMI线 特点&#xff1a;HDMI线是一种全数字化视频和声音发送接口&#xff0c;可以发送未…

PCL 点云圆柱邻域搜索

目录 一、概述 1.1原理 1.2实现步骤 1.3应用场景 二、代码实现 2.1关键函数 2.2完整代码 三、实现效果 PCL点云算法汇总及实战案例汇总的目录地址链接&#xff1a; PCL点云算法与项目实战案例汇总&#xff08;长期更新&#xff09; 一、概述 本文将介绍如何使用PCL库进…

Snapchat API 访问:Objective-C 实现示例

Snapchat 是一个流行的社交媒体平台&#xff0c;它允许用户发送和接收短暂存在的图片和视频。对于开发者来说&#xff0c;访问 Snapchat API 可以为应用程序添加独特的社交功能。本文将介绍如何在 Objective-C 中实现对 Snapchat API 的访问&#xff0c;并提供一个详细的代码示…

spring boot启动报错:so that it conforms to the canonical names requirements

springboot 2.x的版本中对配置文件中的命名规范有了强制性的要求&#xff0c;如下图所示中的dataSource属性属于驼峰格式&#xff0c;但是在springboot 2.x中不允许使用驼峰形式。 根据错误提示可知将其使用 - 来分割即可 错误信息的含义&#xff1a;“Canonical names should…

LLM - 理解 多模态大语言模型(MLLM) 的 指令微调(Instruction-Tuning) 与相关技术 (四)

欢迎关注我的CSDN&#xff1a;https://spike.blog.csdn.net/ 本文地址&#xff1a;https://spike.blog.csdn.net/article/details/142237871 免责声明&#xff1a;本文来源于个人知识与公开资料&#xff0c;仅用于学术交流&#xff0c;欢迎讨论&#xff0c;不支持转载。 完备(F…

最新版本TensorFlow训练模型TinyML部署到ESP32入门实操

最新版本TensorFlow训练模型TinyML入门实操 1.概述 这篇文章介绍微型嵌入式设备的机器学习TinyML&#xff0c;它们的特点就是将训练好的模型部署到单片机上运行。 2.TensorFlow深度学习原理 TensorFlow开源项目是由google研发的一个嵌入式机器学习工具&#xff0c;通过调用…

鸿蒙媒体开发系列07——AVRecorder音频录制

如果你也对鸿蒙开发感兴趣&#xff0c;加入“Harmony自习室”吧&#xff01;扫描下方名片&#xff0c;关注公众号&#xff0c;公众号更新更快&#xff0c;同时也有更多学习资料和技术讨论群。 1、概述 在HarmonyOS系统中&#xff0c;多种API都提供了音频录制开发的支持&#x…

2024永久激活版 Studio One 6 Pro for mac 音乐创作编辑软件 完美兼容

Studio One 6是一款功能强大的音乐制作软件&#xff0c;由PreSonus公司开发。它提供了全面的音频录制、编辑、混音和母带处理工具&#xff0c;适用于音乐制作人、音频工程师和创作人员。 Studio One 6拥有直观的用户界面&#xff0c;使用户能够快速而流畅地进行音乐创作。它采…

ubuntu安装emqx

目录 1.预先下载好emqx压缩包 2.使用tar命令解压 3.进入bin目录 5.放开访问端口18083 6.从通过ip地址访问emqx后台 7.默认用户名密码为admin/public 8.登录后台 9.资源包绑定在此博文可自取 1.预先下载好emqx压缩包 2.使用tar命令解压 sudo tar -xzvf emqx-5.0.8-el8-…

莱卡相机sd内存卡格式化了怎么恢复数据

在数字化时代&#xff0c;相机已成为我们记录生活、捕捉瞬间的重要设备。而SD内存卡&#xff0c;作为相机的存储媒介&#xff0c;承载着我们的珍贵记忆和重要数据。然而&#xff0c;有时由于误操作、系统错误或其他原因&#xff0c;我们可能会不小心格式化SD内存卡&#xff0c;…

一个基于VB的期刊信息管理系统

一个基本的期刊信息管理系统的示例&#xff0c;使用 Visual Basic (VB.NET) 编写。这个示例将展示如何创建一个简单的期刊信息管理系统&#xff0c;其中包括添加、查看、编辑和删除期刊的功能。 系统需求 添加期刊&#xff1a;允许用户输入期刊的信息&#xff08;如标题、作者…