一 用户、权限管理

1.1 用户

作用: 登录,管理数据库逻辑对象

定义: 用户名@'主机值'

主机值可以是主机名或IP地址,主机值中允许使用通配符

root@'10.0.0.%'
root@'%'
root@'10.0.0.51'
root@'localhost'
root@'db02' # 主机名不能是数字开头
root@'10.0.0.5%'
root@'10.0.0.0/255.255.0.0' # 10.0 B类网络上任何主机

1.2 用户管理操作

增:
mysql> create user dev@'10.0.0.%' identified by '123';
查:
mysql> desc mysql.user; ----> mysql5.7 开始新版的mysql数据库下的user表中已经没有password字段了保存密码的字段变成了authentication_string字段
mysql> select user, host, authentication_string from mysql.user;
改:
mysql> alter user dev@'10.0.0.%' identified by '456';
删:
mysql> drop user dev@'10.0.0.%';

1.3 权限管理操作

grant '权限' on '作用域' to '用户';
mysql> grant all on *.* to 'test'@'%';
Query OK, 0 rows affected (0.00 sec)

所有权限:

https://dev.mysql.com/doc/refman/5.7/en/privileges-provided.html

常用权限介绍:

select:可以从数据库中的表中查询数据
insert:可以插入数据到数据库的表中
update:可以对数据库中的表进行更新数据
delete:可以从数据库中的表中删除数据
alter:可以使用 alter table 来改变表的结构
create:可以创建新的数据库或表的语句
drop:能够删除现有数据库,表和视图
grant option:可以向其它用户授予或移除权限
index:可以创建和删除索引
all或all privileges:代表指定权限等级的所有权限

作用域:

*.*                 ---->代表所有数据库的权限
school.* ----> school 数据库下所有表
school.t1 ----> school 数据库下 t1 表

示例:

创建一个普通管理员账号,具有所有库的所有权限
mysql> grant all on *.* to root@'10.0.0.%' identified by '123'; 创建一个管理员账号,并能给其它账号授权
grant all on *.* to root@'10.0.0.%' identified by '123' with grant option; 创建一个程序用户,具备 app 库下增删查改权限
mysql> grant select, update, insert, delete on app.* to app@'10.0.0.%' identified by '123';

1.4 查看权限

mysql> show grants for app@'10.0.0.%';

1.5 回收权限

mysql> revoke delete on wordpress.*  from app@'10.0.0.%';

1.6 提示

1.6.1 和用户相关操作,执行完后都需要刷新权限
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)
1.6.2 mysql8.0在grant命令添加特性:
  • 建用户和授权分开了
  • grant 不再支持自动创建用户了,不支持改密码
  • 授权之前,必须要提前创建用户。

示例:

mysql> create user 'test'@'%' identified by '123news';
Query OK, 0 rows affected (0.00 sec) mysql> grant select, insert on *.* to 'test'@'%';
Query OK, 0 rows affected (0.00 sec) mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)

1.7 忘记本地root管理员密码

  • --skip-grant-tables #跳过授权表
  • --skip-networking #跳过远程登录,防止外面人连进来
  • --defaults-file #指定启动配置文件位置
[root@db01 ~]# systemctl stop mysqld3307.service
[root@db01 ~]# mysqld_safe --defaults-file=/data/3307/my.cnf --skip-grant-tables --skip-networking &
mysql> flush privileges; #加载权限表
mysql> alter user root@'localhost' identified by '123456';
mysql> exit
Bye
[root@db01 ~]# pkill mysqld
[root@db01 ~]# systemctl start mysqld3307

MySQL5.7用户创建及权限管理的更多相关文章

  1. sql server 用户创建与权限管理

    要想成功访问 SQL Server 数据库中的数据, 我们需要两个方面的授权:一.获得准许连接 SQL Server 服务器的权利: 二.获得访问特定数据库中数据的权利(select, update, ...

  2. Informatica学习:3、用户创建与权限管理

    环境:win7 下安装Informatica 9.6.1 服务器端与客户端作为学习之用,Linux大同小异 一.用户创建(服务器端) 1.登陆admin console (1)打开Admin Cons ...

  3. Linux用户创建及权限管理

    作业一: 1,新建用户natasha,uid为1000,gid为555,备注信息为“master” useradd natasha            vim /etc/passwd         ...

  4. Mongo 用户创建及权限管理

    Mongo版本3.0之前使用的是db.addUser(),但3.0之后使用的是db.createUser() 内建的角色: 数据库用户角色:read.readWrite; 数据库管理角色:dbAdmi ...

  5. (大数据工程师学习路径)第一步 Linux 基础入门----用户及文件权限管理

    用户及文件权限管理 实验介绍 1.Linux 中创建.删除用户,及用户组等操作. 2.Linux 中的文件权限设置. 一.Linux 用户管理 Linux 是一个可以实现多用户登陆的操作系统,比如“李 ...

  6. [转载]Oracle用户创建及权限设置

    出处:https://www.cnblogs.com/buxingzhelyd/p/7865194.html 权限: create session  允许用户登录数据库权限 create table  ...

  7. 实验楼学习linux第一章第三节用户及文件权限管理

    用户及文件权限管理 常用命令 查看用户 whoami 创建用户 sudo adduser 用户名 切换账户 su 用户名 删除账户 sudo deluser 用户名 --remove-home 查看用 ...

  8. MySQL数据库(6)_用户操作与权限管理、视图、存储过程、触发器、基本函数

    用户操作与权限管理 MySQL用户操作 创建用户 方法一: CREATE USER语句创建 CREATE USER "用户名"@"IP地址" IDENTIFIE ...

  9. solaris用户与文件权限管理

    此文章已于 20:45:28 2015/3/22 重新发布到 zhuxuekui3 solaris用户与文件权限管理1 类别    「网站分类」Oracle 一.用户与用户组管理 三种用户:超级用户. ...

随机推荐

  1. EXCEL 引用autocad vba,自动加载其类型库

    Sub AutoADDAutoCADTypeLib() Dim Ref As Variant Dim hasAutoTypeLib As Boolean, hasAXDBLib As Boolean, ...

  2. Linux下Vim常用操作

    linux下Vim的常用操作 linux ​ 首先\(ctrl+Alt+t\)打开小框框 ​ \(./\):相当于手机上的\(home\)键 ​ \(ls\):当前文件夹的东东 ​ \(mkdir\) ...

  3. 使用Javax.mail 发送邮件

    使用Javax.mail 发送邮件 详细说明都在代码中: 引入依赖  <!--sun定义的一套接收.发送电子邮件的API-->    <dependency>      < ...

  4. [源码解析] Flink的Slot究竟是什么?(2)

    [源码解析] Flink 的slot究竟是什么?(2) 目录 [源码解析] Flink 的slot究竟是什么?(2) 0x00 摘要 0x01 前文回顾 0x02 注册/更新Slot 2.1 Task ...

  5. java初探(1)之登录总结

    登录总结 前几章总结了登录各个步骤中遇到的问题,现在完成的做一个登录的案例,其难点不在于实现功能,而在于抽象各种功能模块,提高复用性,较低耦合度. 前端页面: 对于前端页面来说,不是后端程序员要考虑的 ...

  6. 跟着尚硅谷系统学习Docker-【day01】

    day01-20200710   p1.基础知识   鲸鱼背上有一些集装箱   学习docker得基础知识   1.强制:熟悉Linux命令和相关背景知识 2.建议有maven和git的相关知识   ...

  7. 用Python实现十大经典排序算法-插入、选择、快速、冒泡、归并等

    本文来用图文的方式详细讲解了Python十大经典排序算法 —— 插入排序.选择排序.快速排序.冒泡排序.归并排序.希尔排序.插入排序.桶排序.基数排序.计数排序算法,想要学习的你们,继续阅读下去吧,如 ...

  8. Native Comments

    local variables referenced from a Lambda expression must be final or effectively final. Lambda表达式中引用 ...

  9. LayUi超级好用的前端工具

    日期:https://www.layui.com/laydate/ LayUi 首页地址:https://www.layui.com/

  10. C#编辑GridView的Thead

    背景 有这样一个需求,需要更改GridView的Thead,即表头.不只是多行表头,而是任意的内容,可能是一段文字,也可能是一个图片,综合网上的一些资料,大致整理出一些做法. 内容 大致有两种方法 第 ...