news 2026/7/13 14:42:24

MySQL用户管理

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
MySQL用户管理

MySQL用户管理

  • 与Linux操作系统类似,MySQL也有超级用户好普通用户之分
  • 如果一个用户只需要访问MySQL中的某一个数据库,设置数据库中的某一个表,那么可以为其创建一个普通用户,并未该用户赋予对应的权限,而不让用户看到数据库中的其他数据,防止该用户对其他数据进行误操作。

用户

MySQL中有一个默认的名为mysql的数据库,

查看该数据库中的表,可以找到一个名为user的表,user中存储的就是mysql中用户相关信息

不分字段说明

  • user:表示该用户的用户名
  • host:表示该用户可以从哪个主机登录,localhost表示只能从本地登录,%表示可以从任意地方登录
  • authentication_string:表示该用户的密码经过password函数加密后的值
  • xxx_priv:表示该用户是否拥有对应权限
    在查看用户的时候为了避免刷屏,可以只选择对不分字段进行显示,如下:

    这里可以发现,MySQL中可以存在同名的用户,只要他们对应登录主机不同就行,因为user表中的主键是复合主键,由表中的user列和host共同承担

    创建用户
CREATEUSER'用户名'@'登录主机'IDENTIFIEDBY'密码';

比如我现在来创建一个用户aolang,并且让他可以在任意地方登录,如下:

现在我从window上登录一下

修改用户密码

修改自己的密码

ALTERUSERUSER()IDENTIFIEDBY'新密码';

超级用户修改别人的密码

ALTERUSER'root'@'localhost'IDENTIFIEDBY'新密码';

删除用户

DROPUSER'用户名'@'登录地址';

比如将刚才创建的用户删除

数据库的权限

MySQL中的权限

权限列名上下文
CREATECreate_priv数据库、表或索引
DROPDrop_priv数据库或表
GRANT OPTIONGrant_priv数据库、表或保存的程序
REFERENCESReferences_priv数据库或表
ALTERAlter_priv
DELETEDelete_priv
INDEXIndex_priv
SELECTSelect_priv
UPDATEUpdate_priv
CREATE VIEWCreate_view_priv视图
SHOW VIEWShow_view_priv视图
ALTER ROUTINEAlter_routine_priv保存的程序
CREATE ROUTINECreate_routine_priv保存的程序
EXECUTEExecute_priv保存的程序
FILEFile_priv服务器主机上的文件访问
CREATE TEMPORARY TABLESCreate_tmp_table_priv服务器管理
LOCK TABLESLock_tables_priv服务器管理
CREATE USERCreate_user_priv服务器管理
PROCESSProcess_priv服务器管理
RELOADReload_priv服务器管理
REPLICATION CLIENTRepl_client_priv服务器管理
REPLICATION SLAVERepl_slave_priv服务器管理
SHOW DATABASESShow_db_priv服务器管理
SHUTDOWNShutdown_priv服务器管理
SUPERSuper_priv服务器管理

给用户授权

GRANT权限列表ON库名.对象名TO'用户名'@'登录地址'[IDENTIFIEDBY'密码'];
  • '用户名'@'登录地址':表示给哪一个用户授权
  • 库名.对象名:表示要授予用户哪个数据库下的哪个对象的权限
  • 权限列表:表示要授予用户何种权限,多个权限之间用逗号隔开
  • IDENTIFIED BY '密码'可选:如果用户存在,则在授予权限的同时修改改用户的密码,如果不存在则创建该用户
    MySQL 8.0 及以上版本(必须先创建用户,再授权)


对于aolang

可以通过show grants for '用户名'@'密码'查看用户现有的权限

  • 创建用户后用户默认有USAGE权限,它只能用于数据库登录,不能执行任何操作
  • *.*表示所有数据库的所有对象,库名.*表示某个数据库的所有对象(表、视图、存储过程等)

aolang进入test数据库后,只能查看表中的信息,无法对表中数据进行修改,因为我们只赋予了select权限
回收权限

REVOKE权限列表ON库名.对象名FROM'用户名'@'登录地址';
  • 回收权限的语法与授权一样,只不过将to关键字改为了from,并且没有了IDENTIFIED BY '密码’字段。

  • 回收用户在某一数据库下的权限后,在该用户下一次进入该数据库时才会起作用。

  • 如果回收权限时该用户正在使用对应数据库,那么回收权限后该用户仍然拥有对应的权限。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/12 4:40:52

面向削峰填谷的电动汽车多目标优化调度策略

面向削峰填谷的电动汽车多目标优化调度策略 关键词:电动汽车 削峰填谷 多目标 充放电优化 参考文档:自己整理的说明文档,公式、约束、数据齐全,可联系我查看 仿真软件:MATLAB YALMIPCPLEX 优势:代码注释详…

作者头像 李华
网站建设 2026/7/13 5:40:46

如何在30分钟内完成Dify与Spring AI的无缝部署?资深架构师亲授秘诀

第一章:Dify与Spring AI集成的核心价值将 Dify 与 Spring AI 框架集成,为现代企业级 Java 应用注入了强大的 AI 能力。这种融合不仅提升了系统的智能化水平,还显著降低了开发复杂 AI 功能的技术门槛。提升开发效率与模型可维护性 通过集成 Di…

作者头像 李华
网站建设 2026/7/11 8:34:18

【Vue知识点总结】Vue中的namespaced命名空间详解

一、什么是 namespaced 命名空间? 在Vue生态中,Vuex作为官方的状态管理库,提供了集中式存储管理应用所有组件的状态。随着项目规模扩大,单一状态树会变得臃肿,难以维护。Vuex支持将store分割成多个模块(module),每个模块拥有自己的state、mutations、actions、getters…

作者头像 李华
网站建设 2026/7/11 17:23:38

告别单一生态限制,构建R-Python一体化可视化工作流

第一章:告别单一生态限制,迈向多语言协同新范式在现代软件开发中,技术栈的多样性日益增强,依赖单一编程语言或封闭生态已难以满足复杂业务场景的需求。跨语言协作不仅提升了系统灵活性,还使团队能够根据具体任务选择最…

作者头像 李华
网站建设 2026/7/13 11:10:55

论基于REST服务的Web应用系统设计

REST作为互联网核心架构风格,以资源为核心、无状态交互为特征,结合面向服务思想构建的Web应用,具备轻量、可扩展等优势,已成为企业级Web系统开发的主流选择。本文结合笔者参与的某连锁便利店全渠道运营管理平台开发项目实践&#…

作者头像 李华
网站建设 2026/7/13 5:02:22

R语言在气象数据分析中的应用(相关性建模全攻略)

第一章:R语言在气象数据分析中的相关性建模概述 R语言因其强大的统计分析能力和丰富的可视化工具,成为气象数据分析中相关性建模的首选编程环境。气象数据通常具有高维度、时间序列性强和空间异质性等特点,R提供了如dplyr、tidyr、ggplot2和l…

作者头像 李华