MySQL数据库用户管理以及数据库用户授权

article/2025/4/20 5:44:52

目录

一、数据库用户管理

1、新建用户

2、查看用户信息

3、重命名用户

4、删除用户

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

6、修改其他用户密码

7、忘记 root 密码的解决办法

7.1 修改 /etc/my.cnf 配置文件,不使用密码直接登录到 mysql

7.2 使用 update 修改 root 密码,刷新数据库

二、数据库用户授权

1、授予权限

1.1 允许用户 xkq 在本地查询 learn 数据库中kecheng表的数据记录,但禁止查询其他数据库中的表的记录。

1.2 允许用户 lili 在所有终端远程连接 mysql ,并拥有所有权限。

2、查看权限

3、撤销权限


一、数据库用户管理

1、新建用户

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

CREATE USER 'user1'@'localhost' IDENTIFIED BY '123456';SELECT PASSWORD('abc123');
CREATE USER 'user2'@'localhost' IDENTIFIED BY PASSWORD '*6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9';

2、查看用户信息

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

USE mysql;
SELECT User,authentication_string,Host from user;

3、重命名用户

rename user 'user1'@'localhost' to 'xkq1'@'localhost';   

4、删除用户

drop user 'user2'@'%';

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

set password = password('12345'); 

6、修改其他用户密码

set password for 'user1'@'localhost' = password('abc1234');

7、忘记 root 密码的解决办法

7.1 修改 /etc/my.cnf 配置文件,不使用密码直接登录到 mysql

vim /etc/my.cnf
[mysqld]
skip-grant-tables   #添加,使登录mysql不使用授权表systemctl restart mysqld
mysql   #直接登录

7.2 使用 update 修改 root 密码,刷新数据库

UPDATE mysql.user SET AUTHENTICATION_STRING = PASSWORD('abc123') where user='root';FLUSH PRIVILEGES;
quitmysql -u root -pabc123  

注意:最后再把 /etc/my.cnf 配置文件里的 skip-grant-tables 删除,并重启 mysql 服务

二、数据库用户授权

1、授予权限

GRANT语句:专门用来设置数据库用户的访问权限。当指定的用户名不存在时,GRANT语句将会创建新的用户;当指定的用户名存在时,GRANT 语句用于修改用户信息。

GRANT 权限列表 ON 数据库名.表名 TO '用户名'@'来源地址' [IDENTIFIED BY '密码'];
----------------------------------------------------------------------------------------------------------
#权限列表:用于列出授权使用的各种数据库操作,以逗号进行分隔,如“select,insert,update”。使用“all”表示所有权限,可授权执行任何操作。
#数据库名.表名:用于指定授权操作的数据库和表的名称,其中可以使用通配符“”。例如,使用“bbc.”表示授权操作的对象为 bbc数据库中的所有表。
#'用户名@来源地址':用于指定用户名称和允许访问的客户机地址,即谁能连接、能从哪里连接。来源地址可以是域名、IP 地址,还可以使用“%”通配符,表示某个区域或网段内的所有地址,如“%.bbc.com”、“192.168.229.%”等。
#IDENTIFIED BY:用于设置用户连接数据库时所使用的密码字符串。在新建用户时,若省略“IDENTIFIED BY”部分, 则用户的密码将为空。
----------------------------------------------------------------------------------------------------------

1.1 允许用户 xkq 在本地查询 learn 数据库中kecheng表的数据记录,但禁止查询其他数据库中的表的记录。

grant select on bbc.abc to 'xkq'@'localhost' identified by 'abc123';

1.2 允许用户 lili 在所有终端远程连接 mysql ,并拥有所有权限。

GRANT ALL [PRIVILEGES] ON *.* TO 'wy'@'%' IDENTIFIED BY '123';flush privileges;
quitmysql -u wy -p123
show databases;

2、查看权限

SHOW GRANTS FOR 用户名@来源地址;

例:

SHOW GRANTS FOR 'wy'@'%';

3、撤销权限

REVOKE 权限列表 ON 数据库名.表名 FROM 用户名@来源地址;

例:

REVOKE ALL ON *.* FROM 'wy'@'%';SHOW GRANTS FOR 'wy'@'%';
#USAGE权限只能用于数据库登陆,不能执行任何操作;USAGE权限不能被回收,即 REVOKE 不能删除用户。flush privileges;


http://chatgpt.dhexx.cn/article/t7bsHyuh.shtml

相关文章

Mysql8数据库如何给用户授权

查看用户已有权限 SHOW GRANTS FOR [用户名];使用root用户授予所有权限 -- 授权 GRANT ALL PRIVILEGES ON [数据库名].[表明] TO [用户名][连接地址] WITH GRANT OPTION; -- 刷新权限 FLUSH PRIVILEGES;例如给numb用户的所有连接地址授权numb数据库所有表权限如下&#xff1a…

mysql授权用户多个数据库_MySQL创建用户授权数据库

MySQL等主流数据库的最高权限一般是root用户. 有时我们需要提供数据库的账号和密码以使用某些服务. 但实际上每个服务只会使用1个左右的数据库. 直接将root账号和密码随意分配是一件很危险的事情. 所以我们需要单独的创建用户, 并授权需要的数据库给它. 用户管理 创建用户 创建…

Mysql数据库给用户添加权限

1、Mysql下创建新的用户 新创建的用户默认是没有任何权限的。 语法格式: create user 用户名 identified by 密码; 2、给用户分配权限 语法结构: grant 权限 on 数据库.数据表 to 用户 主机名; 3、精确的控制用户的权限 略 参考博文: m…

mysql怎么给用户加权限_mysql怎么给用户加权限

mysql给用户加权限的方法:首先创建用户,代码为【create user 用户名 identified by 密码】;然后给用户分配权限,代码为【grant 权限 on 数据库.数据表 to 用户 主机名】。 mysql给用户加权限的方法: 一、Mysql下创建新…

matlab实现参数方程求导(paradiff函数)

目录 总述函数说明应用举例函数实现 总述 函数说明 function resultparadiff(y, x, t, n) %paradiff %参数方程求导的递归实现 % 调用格式: % y1 paradiff(y, x, t, n) % 其中:yf(t), xg(t), t为参数, n为导数阶次 % % Examples: % 已知参数方程…

MATLAB 函数求导

示例:求函数 的导函数并画出两个函数的图像。 clear clc close all %% % 创建符号变量sx syms sx % 创建关于符号变量sx的符号函数sf sf1/(1exp(-sx)); % 将符号函数sf转化为普通函数f fmatlabFunction(sf); % 对符号函数sf求得导函数sdf sdfdiff(sf); % 将导函数…

matlab匿名函数求导,MATLAB进行匿名函数求导出现错误

在视距传输情况下求干扰(上行用户对下行基站传输的干扰)的拉氏变换,首先求得干扰服从LOS下的表达式如下: LOS.png (9.08 KB, 下载次数: 11) LOS传输干扰的拉氏变换 2017-3-18 20:39 上传 程序思路如下: 首先先对含有t的表达式进行描述(求解过程第一步),接下来对含有t的表达…

利用Matlab求解函数导数并绘图

利用Matlab求解函数导数并绘图 题目要求 解题思路 1、定义符号变量 x ,并建立函数表达式 f(x); 2、利用 diff 函数求解 f(x) 的一阶导数和二阶导数; 3、利用 subplot 函数确定多行多列图像位置; 4、利用 ezplot 函数绘制符号函数图像 程序…

matlab二次求导函数,原来可以这样求导函数,再复杂的函数求导不再话下!

还用去翻标准答案吗? 我们以下面这个函数为例: 一阶一维(这里的阶是求几阶导函数的阶,维指的是函数表达式的变量个数): 输入以下命令,其中diff(函数表达式名)是MATLAB内置的求导函数名。 >> syms x; >> f(…

用matlab来计算函数,Matlab函数求导教程

Matlab是一款比较出名的商业数学软件,在这个软件,我们可以解答多种数学难题,但是对于刚接触这个软件的朋友来说,Matlab怎么进行函数求导是一个很大的难题,那么如果你不懂的话,赶紧看看小编整理的Matlab函数…

MATLAB导数计算

通过调用diff命令,我们可以使用MATLAB计算符号导数,只需要把要求的求导函diff命令 例一:计算 syms x t fx.^3x.^2 gcos(10.*t) diff(f) diff(g) 输出结果: 例二:我们要得到f更高阶的导数,我们使用diff(f,n…

WEB前端--SEO优化学习笔记(9)

1.seo是什么 大家口中的SEO(Search Engine Optimization),中文翻译为“搜索引擎优化”,从本质上来说,其实就是如何迎合搜索引擎的规则,使得网站在搜索结果中能有更好的排名,比如一个PDA行业网站…

前端性能优化有哪些方法

1. 浏览器http请求并发前端如何优化 减少网络请求数: 1) 配置304请求,提高请求速度(这属于后端配置) 2) 将图标合成雪碧图,减少图片数量,减少http请求数 3) 使用webpack合并css和js,减少文件数量,减少htt…

前端性能优化CDN

就是将源站的静态资源(图片视频、html/css/js安装包apk等)缓存到位于不同区域的CDN节点服务器上,通常是终端网络提供商的机房,当用户访问网站时,会去离用户距离最近的CDN服务器上获取,从而避免了网络拥塞&a…

前端SEO优化方案

一、关于页面加载速度: 1、一般我们将CSS,JS文件通过外链的方式引入页面,当这些外链数量过多,那相应HTTP请求次数也要增加,这里我们尽量合并CSS,JS文件夹,压缩一些不需要后期维护的CSS,JS代码,CSS文件推荐压…

前端SEO优化技术汇总

一、title、alt、h1 title: 网站头部标签<head>下的title,网站名称 备注&#xff1a;这里为什么不说标签中的title属性&#xff0c;&#xff0c;虽然鼠标上移可以显示图片名字&#xff0c;但是它跟SEO没一丝联系所以我们不关注它。 例如&#xff1a;<img title"…

⛳前端进阶:SEO 全方位解决方案

&#x1f33b; 前言 SEO 代表搜寻引擎最佳化/搜寻引擎优化(英文全名Search Engine Optimization&#xff0c;简称SEO)&#xff0c;是指通过了解搜寻引擎的自然排名的算法逻辑&#xff0c;以提高目标网站在有关搜寻引擎内排名的方式。 网站的 SEO 至关重要&#xff0c;它可以让…

苹果内存其他怎么清理_手机内存不足怎么清理才有效?

手机使用时间长了&#xff0c;特别是使用微信、在线看电影、小视频等&#xff0c;会产生很多缓存数据保存在手机内&#xff0c;不能自动消失&#xff0c;时间久了就形成了很多垃圾。其次&#xff0c;软件安装过多&#xff0c;也会占用很多内存&#xff0c;造成手机内存不足&…

苹果运行内存比较_iPhone手机的内存,为什么这几年一直没有像安卓这样升级

iPhone12系列刚刚发布,手机还没有到用户手中,关于下一代iPhone13的消息初见端倪,不过大部分消息都是捕风捉影,很难有事实依据作为支撑。也有一些消息可靠性比较高,比如苹果依旧没有放弃Touch ID相关研究,有可能在下一代回归。 iPhone 5s,运行内存1G,同时期安卓2G(2013)…

苹果iPhone手机升级系统内存空间变小不够如何解决?

iMazing 是一款 Windows、macOS 平台的 iPhone、iPad 管理工具&#xff0c;可以进行文件、音乐、视频传输&#xff0c;备份与还原数据&#xff0c;并且可以管理已安装应用&#xff0c;比如重新安装那些已下架的应用&#xff0c;是「史上最烂」iTunes 的优秀替代品。 如果我们手…