2-基础管理

标题:基础管理

1.实践:

1.技能框架-思维导图

2.清单-规划好时间

3.操作-习题的方式

4.文档-历史,部署,功能介绍,基本管理,原理

5.原理叙述,照着读

6.整理数据以及小结

【1】技能框架

在这里插入图片描述

【2】清单-规划

在这里插入图片描述

【3】习题一

1.单实例如何启动以及关闭

1.启动
systemctl start mysqld
2.关闭
systemctl stop mysqld

2.多实例如何启动以及关闭

1.启动
systemctl start mysqld3307
systemctl start mysqld3308
2.关闭
systemctl stop mysqld3307
systemctl stop mysqld3308

3.单实例以及多实例的登陆方式,以及区别

1.单实例
本地登陆:mysql -uroot -p -S /data/mysql/data/mysql.sock
远程登陆:mysql -uroot -h 10.0.1.51 -p 
2.多实例
本地登陆:mysql -uroot -p -S /data/3307/mysql.sock
远程登陆:mysql -uroot -p -h 10.0.1.51 -P3307
3.区别
本地登陆:都需要用户,以及用户密码,以及sock文件
远程登陆:都是需要用户以及密码,不同的是,多实例需要指定端口号
4.注意
刚刚初始化完的数据,版本5.7开始只有本地登陆方式,不过本地登陆方式没有密码,需要设置,并且创建远程登陆用户白名单。

4.单实例以及多实例的安全模式,以及区别

1.单实例
mysqld --skip-grant-tables --skip-networking 
2.多实例
mysqld --skip-grant-tables --skip-networking --defaults-file=/data/3307/my.cnf
3.区别
多实例进入安全模式需要指定配置文件

5.如何进入安全模式修改密码

1.停掉数据库
pkill mysqld
2.进入安全模式
单实例以及多实例跳过授权表,以及网络,进入安全模式后
3.刷新授权表
由于跳过授权表,无法修改用户密码,所以要刷新授权表-命令:flush privileges
4.修改密码
alter user user@'10.0.1.51' identified by '123';
5.关闭数据库
pkill mysqld 
6.重启数据库

【4】习题二

1.如何创建用户

1.远程登陆用户
create user admin@'10.0.1.%' identified by '123';
2.本地登陆用户
create user admin@'localhost' identified by '123';

2.如何删除用户

drop user admin@'10.0.1.%' ;

4.如何查询用户

select user ,host from mysql.user;

5.如何设置用户密码

1.设置初始密码
单实例:mysqladmin -uroot -p password '123'
多实例:mysqladmin -uroot -p -P3307 password '123'

6.如何修改用户密码

1.内部设置密码
本地:alter user admin@'10.0.1.%' identified by '456';
远程:alter user admin@'localhost' identified by '456';
2.不登陆修改密码
单实例本地:mysqladmin -uroot -p  password '123'
多实例本地:mysqladmin -uroot -p -S /data/3307/mysql.scok password '123'
单实例网段:mysqladmin -uroot -h 10.0.1.% -p password '123'
多实例网段:mysqladmin -uroot -p -h10.0.1.% -P3307 password '123'

7.用户的表现形式有哪些?

1.白名单主要是本地方式
2.白名单主要是网段的方式

8.用户的定义规范

1.不能是数字开头
2.不能是关键字
3.必须与业务相关

【5】习题三

1.如何设置权限

普通管理员:grant 权限 on *.* to 用户@'白名单';
超级管理员:grant 权限 on *.* to 用户@'白名单' with grent option;

2.如何查询用户权限

show grants for 用户@'白名单';

3.如何移除权限?

revoke 权限 from 用户@'白名单';

4.开一个超级管理员用户Admin,能通过10.0.1.%这个网段管理MySQL

grant all on *.* to Admin@'10.0.1%' with grant option;

5.开一个应用用户,通过10.0.1.%网段,对app库下的表进行查询,修改的操作

1.创建用户
create user admin@'10.0.1.%' identified by '123';
2.授权
grant select ,update ,insert on app.* to admin@'10.0.1.%';

6.查看用户所拥有的权限

show grants for admin@'10.0.1.%';

【6】案例

1.公司中应用开发人员需要申请生产用户,你应该如何沟通,思路是什么?

为了保证数据库的安全,只能给开发人员select,update,insert权限,毕竟我们的职责是保证数据的安全。

2.开发人员给你要管理员用户,你给还是不给?

看情况,非必须的情况下,不给,尽量说明为什么不给,因为要保证数据的安全,如果非要给,让他向上级申请并且给我发一份邮件,才可以。

2.文档

【1】用户管理

1.1 用户的定义

​ 引入:

​ 用户的定义,就是用户的表现形式,也就是说代表这个人的身份。Linux中用户是一个字符串,也就是表现为:test 。其中test就是Linux中用户的表现形式,而设置用户是来干什么的呢?

​ Linux中设置用户是用来登陆的操作系统,以及管理操作系统的,对操作系统中的目录文件等,进行增删改查。

​ 而MySQL数据不一样,它的用户形式是用户名@'限制条件',也即使用户名加上白名单,如果白名单不同,那么用户就是不同,MySQL数据库的用户是有两部分组成。同理,设置数据库用户也是对系统进行操作,不过数据库用户面对操作的对象 是MySQL系统,而Linux面对的操作系统。

​ 小结:

​ linux:用户名表示用户,例如:user

​ MySQL数据库:用户名@'白名单'表示用户,例如:user@'localhost'

​ 扩展:

数据库用户的定义类型:
user@'localhost' 代表着本地登陆 了解
user@'10.0.1.%' 代表着10.0.1.x/24 网段 重点
user@'10.0.1.51' 代表着只能10.0.1.51网段登陆 重点
user@'%' 代表着所有 了解
user@'10.0.1.5%' 代表着10.0.1.50-59的网段 重点
user@'10.0.1.0/255.255.254.0' 代表着10.0.1.0/255.255.254.0网段 重点

1.2 建立用户的规范

1.用户不能用数字开头
2.用户不能是保留字符
3.用户名要和业务有关

1.4 用户的作用

Linux用户的作用:
登陆系统
管理系统
MySQL数据库用户的作用:
登陆数据库
管理数据库内容

1.5 用户的管理命令

(1)创建用户

1.创建用户
create user Admin@'10.0.1.%';
2.创建用户并设置密码
create user Admin@'10.0.1.%' identified by '123';

(2)查询用户

1.命令
select user ,host from mysql.user;

(3)删除用户

1.命令
drop user Admin@'10.0.1.%';

(4)修改用户密码

1.命令
alter user Admin@'10.0.1.%' identified by '456';

1.6 扩展

1.如何查询库

show databases;

2.如何查询库中有那些表?

show tables;

3.如何查询表中的列?

desc tables t1;

【2】权限管理

2.1 权限的定义

​ 引入:

​ Linux中用户有其对应的权限,能够限制用户能够做些什么,限制了用户的行为规范,也就是保证了数据库的安全。而数据库中同样,对于用户也有其对应的权限,通过权限的管理能够最大程度的保护好数据库中的数据。

​ 数据库权限的定义:

1.全部-普通用户
ALL 
2.类型-普通用户
SELECT,INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE,
  REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES,
  LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT,
  CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, 
  EVENT, TRIGGER, CREATE TABLESPACE
3.超级管理员权限-给用户授权
with grant option
Linux中权限定义
r 可读
w 可写
x 可执行

​ 小结:

​ 无论是操作系统还是数据库系统,都是通过设置权限,限制用户行为,来保障系统的安全。

2.2 权限对用户的作用

​ 控制用户,能够对数据库对象做哪些操作.

2.3 授权命令说明

(1)命令

grant all on *.* to Admin@'%' identified by '123';

(2)格式

grant 权限 on 对象 to 用户 identified by '密码';

(3)说明

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bF8U5KCV-1573205375638)(2.基础管理.assets/权限命令.jpg)]

2.4权限管理命令

【1】授权

grant all on *.* to user@'10.0.1.%' identified by '123';

【2】查询权限

show grants for user@'10.0.1.%';

【3】授权超级管理员用户

grant all on *.* to user@'10.0.1.%' with grant option;

【4】回收权限

revoke select on *.* from user@'10.0.1.0';

2.5 习题

(1) 创建和授权一个管理员用户admin,能够通过10.0.1.%网段管理数据库

grant all on *.* to admin@'10.0.1.%' identified by '123';

(2) 授权一个业务用户admin能够通过10.0.1%网段访问test库下的所有表

grant all on test.* to admin@'10.0.1.%';

【3】版本新特性

(1)用户管理方面

​ 5.7版本开始做了安全策略,新建初始数据库,只允许本地登陆,想要远程访问必须要创建用户。版本5.7以前默认用户有很多,5.7加强了安全策略。

(2)权限方面

​ 8.0版本增加了role功能,可以一次性定义多个库,而且8.0版本开始,授权时必须要先有用户,否则会报错。

【4】案例

​ 1.公司中开发人员需要申请生产用户,你如何和他沟通?

首先,开发申请用户,只能给他select,update,insert 三种权限

​ 2.开发人员找你要超级管理员用户,你给还是不给?

    看当时情况,尽量不给,毕竟要保证数据库的安全性,另外如果非要给的话,写一份邮件向上级申请,上级同意之后才给,或者让他给上级申请,并且给自己发邮件,这样才给

【5】注意

数据库的权限是叠加的,授权A权限和授权B权限,最终权限是A+B权限。所以数据库的权限是回收权限
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,602评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,442评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,878评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,306评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,330评论 5 373
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,071评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,382评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,006评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,512评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,965评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,094评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,732评论 4 323
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,283评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,286评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,512评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,536评论 2 354
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,828评论 2 345

推荐阅读更多精彩内容

  • ORA-00001: 违反唯一约束条件 (.) 错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常。 O...
    我想起个好名字阅读 5,176评论 0 9
  • 1,MySQL权限体系 mysql 的权限体系大致分为5个层级: 全局层级: 全局权限适用于一个给定服务器中的所有...
    不排版阅读 934评论 0 4
  • 1.环境准备 centos7 1.1、yum安装设置 yum list |grep openstackcentos...
    davisgao阅读 5,467评论 1 16
  • 1.远程登录mysql mysql -h ip -u root -p 密码 2.创建用户 格式:grant 权限 ...
    jack_520阅读 1,241评论 0 1
  • 最近看了一些讲乔布斯的书以及视频,对他的了解更多了~ 印象最深的是他追求美,追求完美的细节,一直到生命的最后一刻~...
    二小咸阅读 283评论 2 2