【MySQL】用户管理

这篇具有很好参考价值的文章主要介绍了【MySQL】用户管理。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

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


目录

一、用户

1.1 用户信息

1.2 添加用户

1.3 删除用户

1.4 修改用户密码

二、用户权限

2.1 赋予授权

2.2 回收权限


一、用户

1.1 用户信息

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

【MySQL】用户管理,MySQL,数据库,sql,mysql,linux

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

【MySQL】用户管理,MySQL,数据库,sql,mysql,linux

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

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下用户共有以下权限:

权限 上下文
CREATE Create_priv 数据库、表或索引
DROP Drop_priv 数据库或表
GRANT OPTION Rant_priv 数据库、表或保存的程序
REFERENCES References _priv 数据库或表
ALTER Alter_priv
DELETE Delete_priv
INDEX Index_priv
INSERT Insert_priv
SELECT Select_priv
UPDATE Update_priv
CREATE VIEW Create_view_priv 视图
SHOW VIEW Show_view_priv 视图
ALTER ROUTINE Alter_routine_priv 保存的程序
CREATE ROUTINE Create_routine_priv 保存的程序
EXECUTE Execute _priv 保存的程序
FILE File_priv 服务器主机上的文件访问
CREATE TEMPORARY TABLES Create_tmp_table_priv 服务器管理
LOCK TABLES Lock_tables _priv 服务器管理
CREATE USER Reate_user_priv 服务器管理
PROCESS Process_priv 服务器管理
RELOAD Reload_priv 服务器管理
REPLICATION CLIENT Repl_client_priv 服务器管理
REPLICATION SLAVE Repl_slave_priv 服务器管理
SHOW DATABASES show_db_priv 服务器管理
SHUTDOWN Shutdown_priv 服务器管理
SUPER Super_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://www.toymoban.com/news/detail-685280.html

到了这里,关于【MySQL】用户管理的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • MySQL:事务、索引、用户管理、备份、数据库设计(三大范式)

    MySQL:事务、索引、用户管理、备份、数据库设计(三大范式)

    事务 (transaction):要么都成功,要么都失败。 核心 :将一组 SQL 放在一个批次中去执行。 原则 ACID :原子性(atomicity)、一致性(consistency)、隔离性(isolation)、持久性(durability)。 原子性 :一个事务中的所有步骤 要么都 成功, 要么都 失败,不能只成功一个步骤。 一致性 :包括

    2023年04月26日
    浏览(14)
  • 【Mysql数据库从0到1】-入门基础篇--用户与权限管理

    【Mysql数据库从0到1】-入门基础篇--用户与权限管理

    Mysql 用户分为root用户和普通用户,其中root用户是数据库超级管理员,拥有所有权限(创建、删除、修改密码、授权等管理权限),普通用户只拥有被授予的权限。 Mysql数据库的安全性通过账户管理来保障。 1.1 🍃 Mysql服务器登录 🍀 简单使用 🍀 复杂使用 1.2 🍃 用户创建

    2024年02月07日
    浏览(12)
  • 【MySQL数据库原理】在MySQL Workbench界面运行SQL代码——学生管理系统

    【MySQL数据库原理】在MySQL Workbench界面运行SQL代码——学生管理系统

    在 MySQL Workbench 8.0 中,你可以使用以下步骤新建内容并运行 MySQL 语言代码: 1、打开 MySQL Workbench 并连接到你的 MySQL 数据库服务器。 2、在左侧的导航栏中,展开你的连接以查看数据库。选择你要在其中运行 SQL 代码的数据库。 3、在顶部菜单栏中,点击 “Query”(查询)选项

    2024年02月03日
    浏览(20)
  • MySQL数据库概念、管理以及SQL语句的基本命令操作

    MySQL数据库概念、管理以及SQL语句的基本命令操作

    数据(data) 描述事物的符号记录 包括数字,文字、图形、图像、声音、档案记录等 以“记录”形式按统一格式进行存储(记录可以看成一条记录) 表 将不同的记录组织在一起 用来存储具体数据 记录:行 字段(属性):列 以行+列的形式就组成了表(数据存储在表中) 数

    2024年02月08日
    浏览(20)
  • 【MySQL】:探秘主流关系型数据库管理系统及SQL语言

    【MySQL】:探秘主流关系型数据库管理系统及SQL语言

    🎥 屿小夏 : 个人主页 🔥个人专栏 : MySQL从入门到进阶 🌄 莫道桑榆晚,为霞尚满天! 在现代信息技术领域中,数据库管理系统扮演着至关重要的角色。本文将介绍数据库、数据库管理系统和SQL等概念,并深入探讨主流的关系型数据库管理系统以及关系型数据库的数据模

    2024年01月20日
    浏览(23)
  • linux系统--------------mysql数据库管理

    linux系统--------------mysql数据库管理

    目录 一、SQL语句 1.1SQL语言分类 1.2查看数据库信息    1.3登录到你想登录的库 1.4查看数据库中的表信息 1.5显示数据表的结构(字段) 1.5.1数据表的结构 1.5.2常用的数据类型: 二、关系型数据库的四种语言 2.1DDL:数据定义语言,用于创建数据库对象,如库、表、索引等 2.1.1库

    2024年03月24日
    浏览(13)
  • linux高级管理——访问MYSQL数据库

    linux高级管理——访问MYSQL数据库

    一、认识数据库系统:  MySQL数据库系统也是一个典型的C/S(客户端/服务器)架构的应用,要访问MySQL数据库需要使用专门的客户端软件。在Linux系统中,最简单、易用的MySQL客户端软件是其自带的mysql命令工具。 1.登录到MySQL服务器 经过安装后的初始化过程,MySQL 数据库的默

    2024年02月04日
    浏览(8)
  • Linux高级管理--安装MySQL数据库系统

    Linux高级管理--安装MySQL数据库系统

            MySQL.是一个真正的多线程、多用户的SQL数据库服务,凭借其高性能、高可靠和易于使 用的特性,成为服务器领域中最受欢迎的开源数据库系统。在2008年以前,MySOL项目由MySQL AB公司进行开发,发布和支持,之后历经Sun 公司收购MySOL AB公司,Oracle公司收购Sun公司 的

    2024年02月04日
    浏览(31)
  • 基于Linux操作系统中的MySQL数据库SQL语句(三十一)

    基于Linux操作系统中的MySQL数据库SQL语句(三十一)

    MySQL数据库SQL语句 目录 一、SQL语句类型 1、DDL 2、DML 3、DCL 4、DQL 二、数据库操作 1、查看 2、创建 2.1、默认字符集 2.2、指定字符集 3、进入  4、删除 5、更改 6、练习 三、数据表操作 (一)数据类型 1、数值类型 1.1、TINYINT 1.2、SMALLINT 1.3、INT 1.4、BIGINT 1.5、FLOAT(M,D) 2、时间

    2024年02月15日
    浏览(11)
  • MySQL数据库——MySQL GRANT:用户授权

    授权就是为某个用户赋予某些权限。例如,可以为新建的用户赋予查询所有数据库和表的权限。MySQL 提供了 GRANT 语句来为用户设置权限。 在 MySQL 中,拥有 GRANT 权限的用户才可以执行  GRANT  语句,其语法格式如下: 其中: priv_type 参数表示权限类型; columns_list 参数表示权

    2024年02月06日
    浏览(9)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包