MySQL数据库用户、角色、授权
权限包括 insert delete update select all privileges
登录MySQL
> mysql -uroot -p
Enter password: ****
1. 添加用户
mysql> insert into mysql.user(host,user,password) values('%', 'xiaoming', password('xiaoming123'));
mysql> flush privileges;
现在可以使用帐号(xiaoming,xiaoming123)登录MySQL了。但是只有默认权限,仅能操作两个数据库(information_schema和test)
2. 授权
grant <权限列表> on <关系> to <用户/角色>
等价于
grant <权限列表> on <关系> to <用户/角色>@'%'
表示授权给来自所有主机该用户
@<主机> 用来指定用户登录的主机
grant insert on school.* to xiaoming
此时,用户xiaoming就拥有了对数据库school的insert权限。
mysql> show databases; ---授权前
+--------------------+
| Database |
+--------------------+
| information_schema |
| test |
+--------------------+
2 rows in set (0.00 sec) mysql> show databases; --- 授权后
+--------------------+
| Database |
+--------------------+
| information_schema |
| school |
| test |
+--------------------+
3 rows in set (0.00 sec) mysql> use school;
Database changed
mysql> insert into student(name,score) values('xiaoming',60);
Query OK, 1 row affected (0.08 sec) mysql> select * from student;
ERROR 1142 (42000): SELECT command denied to user 'xiaoming'@'10.0.2.2' for table 'student'
3. 添加用户并授权
grant <权限> on <关系> to <用户> identified by <密码> [with grant options]
mysql> grant select on school.* to xiaoqiang@'%' identified by 'xiaoqiang123';
mysql> flush privileges;
with grant options 参数表示被授权的用户可以将权限再授权给其他用户。
4. 查看用户权限
show grants for <用户/角色>
mysql> show grants for xiaoqiang;
+----------------------------------------------------------------------------------------------------------+
| Grants for xiaoqiang@% |
+----------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'xiaoqiang'@'%' IDENTIFIED BY PASSWORD '*CFE5D9A8AB243F294A8D3C5B7F2B6BDCF7F71DB5' |
| GRANT SELECT ON `school`.* TO 'xiaoqiang'@'%' |
+----------------------------------------------------------------------------------------------------------+
2 rows in set
其中的 “usage” 表示默认权限
5. 回收权限
revoke <权限> on <关系> from <用户/角色>
mysql> revoke select on school.* from xiaoqiang;
mysql> flush privileges;
在用户下次登录后生效
默认是级联回收,即:会将该用户的该权限以及该用户授予给其他用户的该权限全部回收。
revoke <权限> on <关系> from <用户/角色> restrict
使用 restrict 防止级联回收。
MySQL数据库用户、角色、授权的更多相关文章
- MySQL数据库(1)- 数据库概述、MySQL的安装与配置、初始SQL语句、MySQL创建用户和授权
一.数据库概述 1.什么是数据(Data) 描述事物的符号记录称为数据,描述事物的符号既可以是数字,也可以是文字.图片,图像.声音.语言等,数据由多种表现形式,它们都可以经过数字化后存入计算机. 在计 ...
- MySQL 创建用户 与 授权
例,需要给 121.52.215.100 连接添加一个用户 dee,密码是 123456,他只能对数据库 vshop 有 select 权限: CREATE USER '; GRANT SELECT ...
- php 通过 create user 和grant 命令无法创建数据库用户和授权的解决办法
php 通过 create user 和grant 命令无法创建数据库用户和授权的解决办法 解决办法, 通过 insert 命令的方式进行创建. 创建数据库用户: $sql= "insert ...
- 14-补充内容:MySQl创建用户和授权
[转]14-补充内容:MySQl创建用户和授权 权限管理 我们知道我们的最高权限管理者是root用户,它拥有着最高的权限操作.包括select.update.delete.update.grant等操 ...
- python 全栈开发,Day63(子查询,MySQl创建用户和授权,可视化工具Navicat的使用,pymysql模块的使用)
昨日内容回顾 外键的变种三种关系: 多对一: 左表的多 对右表一 成立 左边的一 对右表多 不成立 foreign key(从表的id) refreences 主表的(id) 多对多 建立第三张表(f ...
- Mysql创建用户并授权以及开启远程访问
Mysql创建用户并授权以及开启远程访问 一.创建用户并授权 1.登录mysql mysql -u root -p 2.创建数据库 create database test;//以创建test ...
- mysql更新(七) MySQl创建用户和授权
14-补充内容:MySQl创建用户和授权 权限管理 我们知道我们的最高权限管理者是root用户,它拥有着最高的权限操作.包括select.update.delete.update.grant等操作 ...
- MySQL创建用户并授权及撤销用户权限
这篇文章主要介绍了MySQL创建用户并授权及撤销用户权限.设置与更改用户密码.删除用户等等,需要的朋友可以参考下 MySQL中创建用户与授权的实现方法. 运行环境:widnows xp profess ...
- mysql(单表查询,多表查询,MySQl创建用户和授权,可视化工具Navicat的使用)
单表查询 语法: 一.单表查询的语法 SELECT 字段1,字段2... FROM 表名 WHERE 条件 GROUP BY field HAVING 筛选 ORDER BY field LIMIT ...
- mysql 创建用户,授权,查询用户等
MySQL创建用户与授权 一. 创建用户 命令: CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 说明: username:你将创建的用 ...
随机推荐
- 【原生JS】简单取随机数
因为js本身取随机数仅能取 0 到 1之间的数,所以..... 取 1 - 10之间的随机数. function getSJS(x,y,z){ var int = null; while(int &g ...
- 下推栈实现(c++编程思想 p136)
1 头文件Stack.h #ifndef STACK_H #define STACK_H struct Stack { struct Link { void* data; Link* next; vo ...
- Django入门5--URL传递参数
- UPC 2019年第二阶段我要变强个人训练赛第六场
传送门 A.上学路线 题目描述 小D从家到学校的道路结构是这样的:由n条东西走向和m条南北走向的道路构成了一个n*m的网格,每条道路都是单向通行的(只能从北向南,从西向东走). 已知小D的家在网格的左 ...
- IDEA开发 工具IC和IU的区别
现在很多人都在用IDEA开发工具,那么下载安装时会有ideaIU和ideaIC两个版本,到底该怎么选择呢? 首先: ideaIU:U代表的是Ultimate,这个是官方旗舰版也就是商用版本,官方只提供 ...
- Weblogic/WAS之Full GC监控与计算
在网上看到关于内存回收机制,同大家一起分析探讨.堆内存划分为Eden.Survivor 和 Tenured/Old 空间,如下图所示: Minor GC 会清理年轻代的内存,Major GC 是清理老 ...
- 25.python之面向对象
一 三大编程范式 正本清源一:有人说,函数式编程就是用函数编程--->傻逼 编程范式即编程的方法论,标识一种编程风格 大家学习了基本的python语法后,大家就可以写python代码了,然后每个 ...
- HTML基础常识
什么是HTML? 超文本标记语言,用来制作网页 浏览器常识: 常见浏览器: 谷歌(Chrome).苹果(Safari) . IE(Edge).欧朋(Opera).火狐(Firefox) 浏览器内核:浏 ...
- easyUI dataGrid主从表点击展开问题
昨天在公司写代码遇到了一个问题,就是在用easyUI做主从表的时候在查询之后点击展开的时候不能再次展开了.先说一下主从表我也是第一次用 效果如下图: 然后点击前面的小加号出现以下效果: 然而遇到了一个 ...
- apium环境搭建(mac)
appium 环境搭建 安装homebrew(Mac OSX上的软件包管理工具) $ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubuse ...