MySQL用户管理-创建、授权、查看、删除_mysql新建用户需要去除performance_schema权限吗-程序员宅基地

技术标签: 权限  MySQL  grant  

测试环境

  • 服务器版本:WSL 2 Ubuntu 18.04

  • MySQL版本:5.7.28-0ubuntu0.18.04.4 (Ubuntu)

在开始之前,请确保服务器已安装 MySQL,并拥有 root 权限。

创建一个新的用户账号

MySQL 中的用户账号是由用户名和主机名组成,例如'root'@'localhost'

运行以下命令即可创建一个用户名为database_user,密码为user_password的用户:

mysql> CREATE USER '`database_user`'@'localhost' IDENTIFIED BY '`user_password`';

上述命令中,主机名为localhost,表示只能从本地主机(即运行该 MySQL Server 的服务器),如果要授予该用户来自其他主机的访问权限,只需将localhost改为远程登录 IP 或者 %%表示通配符,意味着该用户能够从任何主机进行远程连接。

如果不确定用户是否存在,可以使用以下命令:

mysql> CREATE USER IF NOT EXISTS '`database_user`'@'localhost' IDENTIFIED BY '`user_password`';

修改MySQL用户密码

其实不同的 MySQL 版本修改用户密码的命令是不一样的。

在终端执行mysql --version可以查看 MySQL 版本。

如果是 MySQL 5.7.6 + 或者 MariaDB 10.1.20 +,需要使用以下命令来更改:

mysql> ALTER USER 'database_user'@'localhost' IDENTIFIED BY 'new_password';

如果是 MySQL 5.7.5 - 或者 MariaDB 10.1.20 -,则需要使用以下命令来更改:

mysql> SET PASSWORD FOR 'database_user'@'localhost' = PASSWORD('new_password');

查看所有MySQL用户账号

MySQL 中用户账户的全部信息都保存在mysql.user表中。

使用以下命名查看mysql.user表结构:

mysql> DESC mysql.user;

可以看到结构如下:

查看用户账号信息:

mysql> SELECT user, host FROM mysql.user;

结果和以下内容相似:

+------------------+-----------+
| user             | host      |
+------------------+-----------+
| database_user    | %         |
| database_user    | localhost |
| debian-sys-maint | localhost |
| mysql.session    | localhost |
| mysql.sys        | localhost |
| root             | localhost |
+------------------+-----------+
6 rows in set (0.00 sec)

删除MySQL用户账号

mysql> DROP USER IF EXISTS 'database_user'@'localhost';

给MySQL用户授权

MySQL支持的权限的完整列表 点这里

这里介绍几个常用的例子。

授予指定用户所有权限:

mysql> GRANT ALL PRIVILEGES ON database_name.* TO 'database_user'@'localhost';

授予所有用户所有权限:

mysql> GRANT ALL PRIVILEGES ON *.* TO 'database_user'@'localhost';

授予指定用户对指定表所有权限:

mysql> GRANT ALL PRIVILEGES ON database_name.table_name TO 'database_user'@'localhost';

授予指定用户对指定表的指定权限:

mysql> GRANT SELECT, INSERT, DELETE ON database_name.* TO database_user@'localhost';

撤销MySQL用户权限

撤销用户所有权限:

mysql> REVOKE ALL PRIVILEGES ON database_name.* TO 'database_user'@'localhost';

显示MySQL用户权限

mysql> SHOW GRANTS FOR 'database_user'@'localhost';

总结

该教程总结了 MySQL 用户的基本管理实例,如果向了解更多,请参考 MySQL 5.7 官方文档

感谢:How to Manage MySQL Databases and Users from the Command Line

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/MShow006/article/details/103603000

智能推荐

dcm4che3处理dicom文件基本操作-程序员宅基地

文章浏览阅读2.3k次。上一篇介绍了如何使用python来操作dicom文件,然后这里介绍一下使用java开源的工具dcm4che3来处理文件,达到一样的效果。 github:https://github.com/dcm4che/dcm4che 然后我们也可以看看官网的介绍,因为dicom涉及的范围比较多,所以d..._dcm4che3 解析dicom

学习C++的第一步,环境搭建:Visual Studio的安装和创建C++项目_visual studio c++安装教程-程序员宅基地

文章浏览阅读9.7k次,点赞8次,收藏39次。无论学习任何语言,首先要有编译环境,这里介绍Visual Studio的安装和使用,作为后面C++学习的环境。当然,除了Visual Studio,还有qtcreater、vscode等IDE可以使用,可以根据自己的喜欢安装对应的软件。下面对Visual Studio的安装进行一个详细说明,对具体版本没有限制。_visual studio c++安装教程

有关SAP中等于空的问题_sap 固定值 為空-程序员宅基地

文章浏览阅读2.1k次。20.17. 表字段初始值、NULL等问题20.17.1. SE11表设置中的Initial Values如果一个表是新创建的,数据库中的所有字段都会被设计成非NULL,此时与钩不钩上“Initial Values”框没有关系,且都会设置默认值,并且所有的主键都会强制将“Initial Values”框钩上该标示只在修改表结构且在现有表结构增加一个字段时,才起..._sap 固定值 為空

[C/C++ -STL]vector底层实现机制刨析-程序员宅基地

文章浏览阅读7.2k次,点赞17次,收藏30次。一、vector底层实现机制刨析通过分析 vector 容器的源代码不难发现,它就是使用 3 个迭代器(可以理解成指针)来表示的:其中statrt指向vector 容器对象的起始字节位置;finish指向当前最后一个元素的末尾字节end_of指向整个 vector 容器所占用内存空间的末尾字节。如图 演示了以上这 3 个迭代器分别指向的位置如图 演示了以上这 2个迭代器分别指向的位置在此基础上,将 3 个迭代器两两结合,还可以表达不同的含义,例如:start 和 finish 可以用来表_vector底层实现

搭建5个节点的hadoop集群环境(CDH5)-程序员宅基地

文章浏览阅读1.9k次。提示:如果还不了解Hadoop的,可以下查看这篇文章Hadoop生态系统,通过这篇文章,我们可以首先大致了解Hadoop及Hadoop的生态系统中的工具的使用场景。搭建一个分布式的hadoop集群环境,下面是详细步骤,使用cdh5 。一、硬件准备基本配置:操作系统64位CPU(英特尔)Intel(R_cdh5

fxfactory卸载不干净?Fxfactory及插件卸载教程_fxfacory的插件有时候能用有时候用不了-程序员宅基地

文章浏览阅读432次。fxfactory是一款非常受欢迎的视频特效插件合集,能应用到FCPX、AE、PR、motion等软件中。过多特效插件下载会导致这些软件运行打开速度慢,那么如何卸载fxfactory这款软件或者删除那些特效插件呢?跟随小编一起来看看吧!fxfactory中插件删除教程打开fxfactory 软件,在Installed处找到已经安装过的插件,比如安装好的Caption Burner插件去掉勾选,插件颜色变黑白即可运行FCPX、AE、PR、motion等软件,Caption Burner就不会出现了,影响软件_fxfacory的插件有时候能用有时候用不了

随便推点

【信息系统项目管理师】高项知识框架--考点大汇总_高项管师章节重点知识归纳-程序员宅基地

文章浏览阅读5.9k次,点赞10次,收藏72次。【信息系统项目管理师】高项知识框架–考点大汇总_高项管师章节重点知识归纳

ASP.NET网站制作-程序员宅基地

文章浏览阅读6.4k次,点赞3次,收藏28次。ASP.NET网站制作1、ASP.NET页面对象1网页脚本当客户端通过客户浏览器发送HTTP请求时,web服务器将HTML文档部分和脚本部分返回给客户端浏览器,在客户端浏览器中解释执行并及时更新页面,脚本处理工作全部在客户端浏览器执行完成。优点: 减轻服务器负荷,同时增加页面的反应速度。缺点:浏览器差异性导致页面差异支持的语言: JavaScriptJScript VBScript(2)服务端脚本..._asp.net网站制作

车载 OTA技术概念_sota和ota的区别?-程序员宅基地

文章浏览阅读3k次,点赞10次,收藏54次。总的来说,OTA实现方案分为两种,一种与通常的刷写方式一样,即先擦除当前版本软件,再刷写新版本软件,但这种方法有个隐患,就是新软件有问题时,由于旧软件已经被擦除,没有备份,恢复会很麻烦,因此就提出了另一种,即A/B交换。(Firmware-Over-the-Air),是指不改变车辆原有配件的前提下,通过写入新的固件程序,使拥有联网功能的设备进行升级,包括车辆的发动机,电机,变速箱,底盘等控制系统,比如特斯拉曾通过FOTA新增过自动驾驶功能、增加过电池容量和改善过刹车距离等。,那都将是一项很繁重的任务。_sota和ota的区别?

清空数据库的方法_548数据库清库-程序员宅基地

文章浏览阅读744次。近来发现数据库过大,空间不足,因此打算将数据库的数据进行全面的清理,但表非常多,一张一张的清空,实在麻烦,因此就想利用SQL语句一次清空所有数据.找到了三种方法进行清空.使用的数据库为MS SQL SERVER.1.搜索出所有表名,构造为一条SQL语句declare @trun_name varchar(8000)set @trun_name=''select_548数据库清库

STL --- 四、算法 Algorithms_c++ algorithms-程序员宅基地

STL中的算法提供了丰富的功能,包括常用算法介绍和时间、空间复杂度的选择。在编写程序时需根据具体问题选择适当的算法,满足时间或空间需求。

【计算机网络学习笔记04】网络体系架构与网络协议_网络体系以及网络协议的定义和内容。-程序员宅基地

文章浏览阅读1.4w次。【计算机网络学习笔记04】网络体系架构与网络协议一、网络协议的概念和要素网络协议是计算机网络相互通信的对等层实体之间,用来交换信息时必须遵守的规则或约定的集合。这些为网络数据交换而制定的通信规则、约定与标准被统称为网络协议,简称协议。网络协议主要由三个基本要素组成,分别是语法、语义和时序。语法:用于定义数据和控制信息的结构或格式。语义:用于解释数据或控制信息的具体含义。时序(同步):用于对事件实现顺序的详细说明。二、计算机网络体系结构计算机网络各层、层中协议以及层间接口的集合(即网络层次_网络体系以及网络协议的定义和内容。