返回顶部
首页 > 资讯 > 数据库 >【MySQL】用户管理
  • 723
分享到

【MySQL】用户管理

数据库sqlmysqllinux 2023-09-15 16:09:27 723人浏览 安东尼
摘要

之前我们一直都使用root身份来对Mysql进行操作,但这样存在安全隐患。这时,就需要使用mysql的用户管理 目录 一、用户 1.1 用户信息 1.2 添加用户 1.3 删除用户 1.4 修改用户密码 二、用户权限 2.1 赋予授权 2

之前我们一直都使用root身份来对Mysql进行操作,但这样存在安全隐患。这时,就需要使用mysql的用户管理


目录

一、用户

1.1 用户信息

1.2 添加用户

1.3 删除用户

1.4 修改用户密码

二、用户权限

2.1 赋予授权

2.2 回收权限


一、用户

1.1 用户信息

在Mysql中所有允许被登录的用户信息都被存放在系统数据库mysql的user表中:

来看看这张表中有着什么样的信息:

在上表中我们先介绍几个比较关键的列:

Host:表示这个用户可以从哪个主机登陆,如果是localhost,表示只能从本机登陆,如果是%表示可以从任何服务器上登录(不推荐%的设置方式,这是很危险的)

user: 用户名

authentication_string: 通过passWord函数加密后的用户密码

*_priv: 用户拥有的权限 

所以我们在对用户信息做修改,本质上是对这个user表做修改!

1.2 添加用户

我们在数据库下添加用户,本质上可以使用insert语句向user表中插入数据,但表中要插入的数据太多了,insert语句在这里就显的不实用了,mysql提供下列语句来方便我们插入用户数据:

create user '用户名'@'登陆主机/ip' identified by '密码';

在我们对user表做了任何修改后,都要下面的语句刷新一下,才能生效:

flush privileges;

1.3 删除用户

mysql提供下列语句供我们删除用户:

drop user '用户名'@'主机名';

1.4 修改用户密码

自己改自己密码:

set password=password('新的密码');

root用户修改指定用户的密码:

set password for '用户名'@'主机名'=password('新的密码');

修改完后记得刷新一下哦:

flush privileges;

二、用户权限

在mysql下用户共有以下权限:

权限上下文
CREATECreate_priv数据库、表或索引
DROPDrop_priv数据库或表
GRANT OPTIONRant_priv数据库、表或保存的程序
REFERENCESReferences _priv数据库或表
ALTERAlter_priv
DELETEDelete_priv
INDEXIndex_priv
INSERTInsert_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 USERReate_user_priv服务器管理
PROCESSProcess_priv服务器管理
RELOADReload_priv服务器管理
REPLICATION CLIENTRepl_client_priv服务器管理
REPLICATION SLAVERepl_slave_priv服务器管理
SHOW DATABASESshow_db_priv服务器管理
SHUTDOWNShutdown_priv服务器管理
SUPERSuper_priv服务器管理

2.1 赋予授权

刚创建的用户没有任何权限。需要通过下列语句给用户授权:

grant 权限列表 on 库名.表名 to '用户名'@'登陆位置' [identified by '密码'];

注意:

当我们要给多个权限时,记得用逗号分开:

grant select, delete, create ...

 我们可以在权限列表中使用all关键字,表示赋予该用户在该对象上的所有权限

库名和表名我们可以使用*来代表所有

如*.* 代表本系统中的所有数据库的所有对象(表,视图,存储过程等) 

identified by可选,如果用户存在,赋予权限的同时修改密码,如果该用户不存在,就是创建用户 

2.2 回收权限

我们可以使用下列语句来回收用户的权限:

revoke 权限列表 on 库名.表名 from '用户名'@'登陆位置';

 


感谢各位的阅览~

更多MySQL技能请看:http://t.csdn.cn/W9dQl

博主努力更新中~

来源地址:https://blog.csdn.net/m0_70811813/article/details/132430865

您可能感兴趣的文档:

--结束END--

本文标题: 【MySQL】用户管理

本文链接: https://www.lsjlt.com/news/408779.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作