Mysql 8.x 创建用户以及授予权限的操作记录


Posted in MySQL onApril 18, 2022

1、进入mysql

mysql -uroot -p

2、创建用户

create user 'testuser1'@'%' identified by '123456';

这里表示创建一个不限制ip登录的用户 testuser1

该用户的密码是 123456

%代表不限制ip登录

刷新权限,每一次权限更改后都刷新一下

flush privileges;

在本地新建连接都可以登录该用户了

Mysql 8.x 创建用户以及授予权限的操作记录

这个时候你打开会发现只有information_schema一个数据库

Mysql 8.x 创建用户以及授予权限的操作记录

3、给用户赋权

grant all privileges on test_grant.* to 'testuser1'@'%' with grant option;

这里表示给用户testuser1赋予数据库test_grant(这是我之前创建好的数据库)中所有表的所有权限

with grant option表示该用户可以给其他用户赋权,但是不能超过该用户的权限

此时查看,用户testuser1多了一个test_grant数据库

Mysql 8.x 创建用户以及授予权限的操作记录

这里的all privileges 可换成select,insert,update,delete,drop,create等

4、查看用户权限

show grants for 'testuser1'@'%';

Mysql 8.x 创建用户以及授予权限的操作记录

5、撤销用户权限

revoke all privileges on test_grant.* from 'testuser1'@'%';

这里表示撤销用户testuser1对数据库test_grant的所有操作权限

注意:这里如果这么写,你会发现你打开还是有数据库test_grant(不过你无法操作该数据库了),这是因为我之前创建的时候用到了with grant option,因为all privileges 是除了with grant option的所有权限

执行如下语句 回收用户所有权限即可

revoke all privileges,grant option from 'testuser1'@'%';

6、删除用户

drop user 'testuser1'@'%';

7、查询所有用户及其权限

SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;

也可以这样

SELECT User, Host FROM mysql.user;

附:查看用户权限

show grants for ‘#userName'@'#host';

#userName 代表用户名

#host 代表访问权限,如下

  • %代表通配所有host地址权限(可远程访问)
  • localhost为本地权限(不可远程访问)
  • 指定特殊Ip访问权限 如10.138.106.102

?本狗要查看的是testUser

show grants for 'testUser'@'%';

Mysql 8.x 创建用户以及授予权限的操作记录

总结

到此这篇关于Mysql8创建用户及赋权操作的文章就介绍到这了!

MySQL 相关文章推荐
Mysql 性能监控及调优
Apr 06 MySQL
详解MySQL 联合查询优化机制
May 10 MySQL
解读MySQL的客户端和服务端协议
May 10 MySQL
MySQL中in和exists区别详解
Jun 03 MySQL
MySQL Shell import_table数据导入的实现
Aug 07 MySQL
防止web项目中的SQL注入
Dec 06 MySQL
如何避免mysql启动时错误及sock文件作用分析
Jan 22 MySQL
MySQL的InnoDB存储引擎的数据页结构详解
Mar 03 MySQL
如何创建一个创建MySQL数据库中的datetime类型
Mar 21 MySQL
MySQL中rank() over、dense_rank() over、row_number() over用法介绍
Mar 23 MySQL
MySQL分区路径子分区再分区
Apr 13 MySQL
Mysql中mvcc各场景理解应用
Aug 05 MySQL
Golang连接并操作MySQL
Apr 14 #MySQL
以MySQL5.7为例了解一下执行计划
Apr 13 #MySQL
MySQL时区造成时差问题
Mysql调整优化之四种分区方式以及组合分区
Apr 13 #MySQL
聊聊mysql都有哪几种分区方式
Apr 13 #MySQL
MySQL分区以及建索引的方法总结
Apr 13 #MySQL
MySQL分区路径子分区再分区
Apr 13 #MySQL
You might like
详解Window7 下开发php扩展
2015/12/31 PHP
PHP开发中常用的十个代码样例
2016/02/02 PHP
php metaphone()函数的定义和用法
2016/05/15 PHP
Yii 2.0如何使用页面缓存方法示例
2017/05/23 PHP
常用js脚本
2006/12/03 Javascript
基于jquery的图片懒加载js
2010/06/30 Javascript
JavaScript 错误处理与调试经验总结
2010/08/10 Javascript
jquery实用代码片段集合
2010/08/12 Javascript
再论Javascript的类继承
2011/03/05 Javascript
JavaScript入门之对象与JSON详解
2011/10/21 Javascript
jquery.pagination.js 无刷新分页实现步骤分享
2012/05/23 Javascript
简单的代码实现jquery定时器
2013/11/17 Javascript
jsPDF导出pdf示例
2014/05/02 Javascript
使用forever管理nodejs应用教程
2014/06/03 NodeJs
JavaScript不使用prototype和new实现继承机制
2014/12/29 Javascript
nodejs事件的监听与触发的理解分析
2015/02/12 NodeJs
JQuery radio(单选按钮)操作方法汇总
2015/04/15 Javascript
针对后台列表table拖拽比较实用的jquery拖动排序
2016/10/10 Javascript
浅谈js函数中的实例对象、类对象、局部变量(局部函数)
2016/11/20 Javascript
微信小程序 动态绑定数据及动态事件处理
2017/03/14 Javascript
Vue.js实例方法之生命周期详解
2017/07/03 Javascript
基于vue-cli配置lib-flexible + rem实现移动端自适应
2017/12/26 Javascript
vue2.0在没有dev-server.js下的本地数据配置方法
2018/02/23 Javascript
详解Node.js读写中文内容文件操作
2018/10/10 Javascript
layer实现登录弹框,登录成功后关闭弹框并调用父窗口的例子
2019/09/11 Javascript
深度解读vue-resize的具体用法
2020/07/08 Javascript
python中bisect模块用法实例
2014/09/25 Python
Python脚本暴力破解栅栏密码
2015/10/19 Python
Python时间序列缺失值的处理方法(日期缺失填充)
2019/08/11 Python
python实现计算图形面积
2021/02/22 Python
一款纯css3实现的非常实用的鼠标悬停特效演示
2014/11/05 HTML / CSS
解决CSS3的opacity属性带来的层叠顺序问题
2016/05/09 HTML / CSS
html5 touch事件实现触屏页面上下滑动(一)
2016/03/10 HTML / CSS
Oracle里面常用的数据字典有哪些
2014/02/14 面试题
销售人员个人求职信
2013/09/26 职场文书
党性锻炼的心得体会
2014/09/03 职场文书