Mysql数据库管理用户

Mysql数据库管理用户

  • 一、管理用户
    • 1.1、用户创建
    • 1.2、 查看用户信息
    • 1.3 、重命名用户
    • 1.4、 删除用户
    • 1.5、 修改当前登录用户密码
    • 1.6、修改其他用户密码
    • 1.7、 忘记密码的解决办法
  • 二、数据库用户授权
    • 2.1、 权限的授予
    • 2.2、 查看权限
    • 2.3、 撤销用户权限

一、管理用户

1.1、用户创建

CREATE USER '用户名'@'来源地址' [IDENTIFIED BY [PASSWORD] '密码'];
  • 用户名:指定创建的用户名
  • 来源地址:指定新建的用户在那些主机登录,可以用IP地址,网段,主机名的形式,本地用户可以用localhost,允许任意主机登录可以用通配符%
  • 密码:
    • 使用明文密码,可直接输入密码,插入到数据库时有mysql自动加密
    • 使用加密密码 ,需要先使用SELECTPASSWORD(‘密码’); 获取密文,再在语句中添加 PASSWORD ‘密文’;
    • 若省略“IDENTIFIED BY”部分,则用户的密码将为空(不建议使用)

实例:明文创建用户

CREATE USER 'lilade'@'localhost' IDENTIFIED BY '123123';

在这里插入图片描述
实例:使用密文创建用户

select password('abc123');
create user 'james'@'localhost' identified by password '*6691484EA6B50DDDE1926A220DA01FA9E575C18A';

在这里插入图片描述

1.2、 查看用户信息

创建后的用户保存在 mysql 数据库的 user 表里

use mysql;
select User,authentication_string,Host from user;

在这里插入图片描述

1.3 、重命名用户

rename user 'lilade'@'localhost' to 'DM'@'localhost';

在这里插入图片描述

1.4、 删除用户

drop user 'james'@'localhost';

在这里插入图片描述

1.5、 修改当前登录用户密码

set password = password('123456');

在这里插入图片描述

1.6、修改其他用户密码

set password for 'DM'@'localhost' = password('abc123');

在这里插入图片描述

1.7、 忘记密码的解决办法

遗忘mysql密码
1.修改配置文件,添加配置,使登录mysql不使用授权表

#进入配置文件
vim /etc/my.cnf
#添加此行
skip-grant-tables

在这里插入图片描述
在这里插入图片描述

2.重启服务,登录测试

#重启服务
systemctl restart mysqld.service
#登录
mysql

在这里插入图片描述
3.使用update修改root密码,刷新数据库

#重设密码
update mysql.user set authentication_string = password('abc123') where user='root';
#刷新数据库
flush privileges;

在这里插入图片描述
4.退出重新登录测试

mysql -uroot -pabc123

在这里插入图片描述
5.再次修改my.conf配置文件,注释掉或删除之前添加的配置命令
在这里插入图片描述

二、数据库用户授权

2.1、 权限的授予

  • GRANT语句:专门用来设置数据库用户的访问权限。当指定的用户名不存在时,GRANT语句将会创建新的用户;当指定的用户名存在时,GRANT 语句用于修改用户信息。
GRANT 权限列表 ON 数据库名.表名 TO '用户名'@'来源地址' [IDENTIFIED BY '密码'];
  • 权限列表:用于列出授权使用的各种数据库操作,以逗号进行分隔,如“select,insert,update”。使用“all”表示所有权限,可授权执行任何操作。

  • 数据库名.表名:用于指定授权操作的数据库和表的名称,其中可以使用通配符“”。例如,使用“kgc.”表示授权操作的对象为 kgc数据库中的所有表。

  • ‘用户名@来源地址’:用于指定用户名称和允许访问的客户机地址,即谁能连接、能从哪里连接。来源地址可以是域名、IP 地址,还可以使用“%”通配符,表示某个区域或网段内的所有地址,如“%.accp.com”、“192.168.80.%”等。

  • IDENTIFIED BY:用于设置用户连接数据库时所使用的密码字符串。在新建用户时,若省略“IDENTIFIED BY”部分, 则用户的密码将为空。

实例: 允许用户 DM在本地查询 ali数据库中 所有表的数据记录,但禁止查询其他数据库中的表的记录。

#切换mysql库
use mysql;
#查看用户
select User,authentication_string,Host from user;
#授权lilade用户grant select on mysql.user to 'lilade'@'localhost' identified by 'abc123';

在这里插入图片描述
登录并查看库

#登录创建的库
mysql -lilade -pabc123
#查看数据库,表,结构
show databases;
use mysql;
show tables;
select * from user;

在这里插入图片描述
在这里插入图片描述

2.2、 查看权限

SHOW GRANTS FOR 用户名@来源地址;
show grants for 'lilade'@'localhost';

在这里插入图片描述

2.3、 撤销用户权限

#在root用户登录
mysql -uroot -pabc123
#查看lilade用户权限
show grants for 'lilade'@'localhost';
#撤销lilade用户查询权限
revoke select on mysql.* from 'lilade'@'localhost';

在这里插入图片描述

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

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

相关文章

如何设置代理ip服务器地址

在今天的互联网环境中,代理服务器在保护个人隐私和规避网络限制方面扮演着重要的角色。设置代理服务器地址的方式主要取决于你使用的具体软件或编程语言。在本文中,我们将分别介绍如何在Python和Java中使用HTTP代理服务器、SOCKS代理服务器以及代理池。 …

四、二叉树-上(Binary tree)

文章目录 一、算法核心思想二、算法模型(一)回溯1.[104.二叉树的最大深度](https://leetcode.cn/problems/maximum-depth-of-binary-tree/)(1)思路(2)代码(3)复杂度分析 2.[144.二叉…

39 | selenium基础架构,UI测试架构

什么是测试基础架构? 测试基础架构指的是,执行测试的过程中用到的所有基础硬件设施以及相关的软件设施。因此,我们也把测试基础架构称之为广义的测试执行环境。通常来讲,测试基础架构主要包括以下内容: 执行测试的机器…

进化的京东云DaaS:向大模型要解

通过新的DaaS大模型模式,京东云想要为企业提供的增长路径,恰是从最原始的“要数据”真正进阶到最终的“出效果”,将大模型和京东对增长的理解封装到整个产品矩阵中,帮助企业构建最适合AI时代的增长底盘。 作者|皮爷 出品|产业…

Xamarin.Android实现App内版本更新

目录 1、具体的效果2、代码实现2.1 基本原理2.2 开发环境2.3 具体代码2.3.1 基本设置2.3.2 系统的权限授予2.3.3 进度条的layout文件2.3.4 核心的升级文件 3、代码下载4、知识点5、参考文献 1、具体的效果 有事需要在程序内集成自动更新的功能,网上找了下&#xff…

【开发篇】二、属性绑定与校验

文章目录 1、ConfigurationProperties自定义Bean属性绑定2、EnableConfigurationProperties注解3、ConfigurationProperties第三方Bean属性绑定4、松散绑定5、常用计量单位6、数据校验7、yaml绑定值的坑--关于进制 1、ConfigurationProperties自定义Bean属性绑定 前面读取yaml…

链表的回文判断

思路: 找中间节点–>逆置->比较 代码: /*** Definition for singly-linked list.* struct ListNode {* int val;* struct ListNode *next;* };*/struct ListNode* middleNode(struct ListNode* head) { struct ListNode*slowhead; struct ListNode*f…

AI数字人:最强声音驱动面部表情模型VideoReTalking

目录 1 VideoReTalking论文解读 1.1 介绍 1.2 相关工作 1.2.1 视频编辑中的音频配音 1.2.2 基于音频的单图像面部动画 1.3 框架 1.3.1 语义引导重演网络 1.3.2 口型同步网络 1.3.3 身份感知增强网络 1.3.4 后期处理 1.4 训练 1.4.1 每个模块的训练 1.4.2 评估 1.…

8+单基因+细胞凋亡+WGCNA+单细胞+实验验证

今天给同学们分享一篇单基因细胞凋亡WGCNA实验验证的生信文章“RASGRP2 is a potential immune-related biomarker and regulates mitochondrial-dependent apoptosis in lung adenocarcinoma”,这篇文章于2023年2月3日发表在Front Immunol期刊上,影响因…

软件测试缺陷报告详解

【软件测试行业现状】2023年了你还敢学软件测试?未来已寄..测试人该何去何从?【自动化测试、测试开发、性能测试】 缺陷报告是描述软件缺陷现象和重现步骤地集合。软件缺陷报告Software Bug Report(SBR)或软件问题报告Software Pr…

【效率提升】maven 转 gradle 实战 | 京东云技术团队

一、灵魂三问 1、gradle 是什么? 一个打包工具, 是一个开源构建自动化工具,足够灵活,可以构建几乎任何类型的软件,高性能、可扩展、能洞察等。其中洞察,可以用于分析构建过程中数据,提供分析参…

一招解除csdn复制限制

先看这个代码 python读取英文pdf翻译成中文pdf文件导出代码 想要复制代码,csdn有限制怎么办(csdn流氓,无耻) 解除方法 ctrlu 看效果