MySQL学习笔记18

MySQL的备份与恢复:

制定数据库备份策略进行备份,并且把数据导入到测试环境。

核心技术:

1)掌握MySQL的备份工具使用及各自特点;

2)熟悉Shell脚本;

3)熟悉MySQL数据的导入导出;

场景任务:

对重要数据做好备份,是我们每个运维人员和DBA的重要职责,备份只是一种手段,我们最终目的是当数据出问题的时候能及时通过备份进行恢复,所以,现在需要对MySQL数据库进行备份策略的制定和实施。

任务要求:

1)选择合适的工具和方法对MySQL数据库进行备份。

2)编写脚本实现自动化备份。

课程目标:

1)了解MySQL常见的备份方法和类型;

2)能够使用mysqldump工具进行数据库的备份。如全库备份、库级别备份、表级别备份。

3)能够使用mysqldump工具+binlog日志实现增量备份。(高端一些)

4)理解xtrabackup工具实现全库备份和增量备份的原理和方法。

5)能够使用xtrabackup工具对数据进行全备和增备。

MySQL备份概述:

1、关于数据保存你要知道的:

思考:数据备份和数据冗余的区别:

数据备份:能够防止由于机械故障以及人为操作带来的数据丢失,例如将数据库中的数据导出成一个文件保存到其他地方。文件备份在某个地方,当服务器出现故障,我们第一时间把备份文件恢复到服务器中。

数据冗余:数据有多份冗余,但不等于数据备份,只能防止机械故障带来的数据丢失。例如:主备模式,主从架构,数据库集群。

主从架构,两个服务器,放着相同的数据,当主服务器出现故障的时候,立即调用从服务器。实时切换。这个叫冗余操作。

理论上,数据备份和数据冗余都要有的。

2、备份什么?

数据库:一堆物理文件的集合;日志文件(二进制文件)+ 数据文件 + 配置文件。

1)数据文件;

2)配置文件;my.cnf

3)日志文件(二进制日志文件)

MySQL体系结构:

连接池:数据库的连接,都先要连接到连接池; 用户身份认证、校验账号密码、权限等操作;

查询缓存:缓存所执行的select语句以及该语句的结果集。第一次查询时间稍微长点,第二次查询时间就非常短。缓存还没有失效。缓存可以加快查询的速度。

mysql> select * from tb_student;
+----+-----------+------+--------+---------+
| id | name      | age  | gender | subject |
+----+-----------+------+--------+---------+
|  1 | 孙行者    |  254 | 男     | ui      |
|  2 | 八戒      |  250 | 男     | python  |
|  3 | 唐僧      |   30 | 男     | yunwei  |
|  4 | 沙僧      |  150 | 男     | java    |
|  5 | 小白龙    |  100 | 男     | yunwei  |
|  6 | 白骨精    |   28 | 女     | ui      |
|  7 | 兔子精    |   22 | 女     | yunwei  |
|  8 | 狮子精    |   33 | 男     | yunwei  |
+----+-----------+------+--------+---------+
8 rows in set (0.00 sec)

分析器:词法分析、语法分析;主要是判断sql语句是否正确,是否符合MySQL的语法。

优化器:选择最优的执行方案去执行器中执行。select有很多执行方式。加快数据的查询。

执行器:检查用户权限、如果有权限,就去调用引擎接口,返回接口的执行结果。

存储引擎层:InnoDB、MyISAM、NDB...在MySQL中,我们可以使用show engines查看当前数据库版本支持哪些引擎。

简单来说,存储引擎就是数据在底层的存储方式。比较常见的是InnoDB和MyISAM。

存储引擎层:

MySQL的MyISAM和InnoDB引擎的区别:

 MyISAM引擎:擅长数据的查询操作,支持全文索引;

InnoDB引擎:支持事务处理,支持行级锁,支持外键;

CID字段,是分类表的主键、产品表的从键。关联删除。代码的方式进行关联操作。

备份的时候主要是围绕这两个引擎进行的。

MEMORY: 基于Hash,存储在内存中,临时不常用的放在临时表中。

BLACKHOLE:5.7版本出现这个引擎。/dev/null, 写到这个里面的数据都会消失。

存储层(数据文件和日志文件)

问题:存储引擎到底是如何保存数据文件的。

mysql> create database db_itheima default charset=utf8;
Query OK, 1 row affected (0.00 sec)

提出问题:我能不能不进入MySQL终端,然后在命令行中直接创建一个数据库呢?-e

MyISAM引擎: 

db_itheima: 数据库文件夹。创建一个数据库,就生成一个数据库文件夹。

db.opt 存放的是数据库的编码格式。

 

MyISAM引擎会生成三个文件。

.frm: 框架文件,定义数据表结构。

.MYI  索引文件INDEX:主要用于存放索引文件。目录索引、主键索引。

.MYD 数据文件。

把三个文件备份下,找个位置可以还原的。这个机制比较简单。

InnoDB引擎(默认引擎):

mysql> create table tb_user (-> id int,-> name char(1)-> )engine=innodb default charset=utf8;
Query OK, 0 rows affected (0.01 sec)mysql> show create table tb_user;
+---------+--------------------------------------------------------------------------------------------------------------------------+
| Table   | Create Table                                                                                                             |
+---------+--------------------------------------------------------------------------------------------------------------------------+
| tb_user | CREATE TABLE `tb_user` (`id` int(11) DEFAULT NULL,`name` char(1) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |
+---------+--------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

只产生了两个文件。.frm和.ibd 两个文件。

.frm 框架文件,定义数据表文件。

.ibd  索引文件+数据文件。

其实InnoDB引擎不仅仅会产生以上两个文件,其在外部data目录中也会产生一个文件(确切来说不能叫做产生文件,而应该叫做共享文件)。

所以由此可知,InnoDB引擎的数据备份不能简简单单的通过拷贝方式实现,必须使用专业的备份工具。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/89570.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据计算-第15届蓝桥杯第一次STEMA测评Scratch真题精选

[导读]:超平老师的《Scratch蓝桥杯真题解析100讲》已经全部完成,后续会不定期解读蓝桥杯真题,这是Scratch蓝桥杯真题解析第154讲。 第15届蓝桥杯第1次STEMA测评已于2023年8月20日落下帷幕,编程题一共有6题,分别如下&a…

浅谈安科瑞ADL系列导轨式多功能仪表在迪拜楼宇EMS中的应用

摘要:用户端消耗着整个电网80%的电能,用户端智能化用电管理对用户可靠、安全、节约用电有十分重要的意义。构建智能用电服务体系,推广用户端智能多功能仪表、智能用电管理终端等设备用电管理解决方案,实现电网与用户的双向良性互动…

计算机网络 - 应用层

计算机网络 - 应用层 计算机网络 - 应用层 域名系统文件传送协议动态主机配置协议远程登录协议电子邮件协议 1. SMTP2. POP33. IMAP 常用端口Web 页面请求过程 1. DHCP 配置主机信息2. ARP 解析 MAC 地址3. DNS 解析域名4. HTTP 请求页面 域名系统 DNS 是一个分布式数据库&a…

ChatGPT批量写作文章软件

什么是ChatGPT批量写作文章。简单来说,它是一种使用ChatGPT技术的方法,可以帮助您批量生成各种类型的文章和内容。无论您是需要新闻报道、博客文章、产品描述、社交媒体帖子还是其他类型的内容,ChatGPT都能满足您的需求。它可以在极短的时间内…

BabelEdit 5.0.1 Crack

BabelEdit加强软件本地化。BabelEdit 是处理 json、yaml、php、arb、vue、properties、resx 或 xliff 翻译文件的可靠解决方案。 旨在使开发过程更加简化和高效。 下载BabelEdit 5.0.0 对于Windows 也适用于macOS 和 Linux BabelEdit - 适用于 Web 和应用程序的翻译编辑器 (…

关键点检测 HRNet网络详解笔记

关键点检测 HRNet网络详解笔记 0、COCO数据集百度云下载地址1、背景介绍2、HRNet网络结构3、预测结果(heatmap)的可视化3、COCO数据集中标注的17个关键点4、损失的计算5、评价准则6、数据增强7、模型训练 论文名称: Deep High-Resolution Rep…

企业级磁盘阵列存储系统由硬到软全析

企业级磁盘阵列是由一组设备构成的存储系统,主要包括两种类型的设备,分别是控制器和扩展柜,其中控制器只有一台,扩展柜可以没有,也可以有多台。在EMC的Unity中分别称为DPE(Disk Processor Enclosure)和DAE(Disk Array Enclosure),在华为的OceanStor里面称为控制框和硬…

聚观早报 | 中国队拿下亚运会电竞项目首金;B站发布68部国创片单

【聚观365】9月28日消息 中国队拿下亚运会电竞项目首金 B站发布68部国创片单 支付宝持续加大流量开放 起点有声书《宿命之环》等大作陆续上线 方程豹豹5详细配置公开 中国队拿下亚运会电竞项目首金 杭州2022年第19届亚运会官网发布公告称,在昨日的杭州第19届亚…

ubuntu20.04下源码编译colmap

由于稠密重建需要CUDA,因此先安装CUDA,我使用的是3050GPU,nvidia-smi显示最高支持CUDA11.4。 不要用sudo apt安装,版本较低,30系显卡建议安装CUDA11.0以上,这里安装了11.1版本。 下载: cuda_1…

【phpMyadmin】MYSQL突破secure_file_priv写shell提权

前言 phpMyAdmin 是一个以PHP为基础,以Web-Base方式架构在网站主机上的MySQL的数据库管理工具,让管理者可用Web接口管理MySQL数据库。借由此Web接口可以成为一个简易方式输入繁杂SQL语法的较佳途径,尤其要处理大量资料的汇入及汇出更为方便。…

分享从零开始学习网络设备配置--任务3.5 使用静态路由实现网络连通

任务描述 某公司规模较小,该公司的网络管理员经过考虑,决定在公司的路由器、交换机与运营商路由器之间使用静态路由,实现网络的互连。 静态路由一般适用于比较简单的网络环境。在这样的环境中,网络管理员应非常清楚地了解网络…

网络爬虫——urllib(1)

前言🍭 ❤️❤️❤️网络爬虫专栏更新中,各位大佬觉得写得不错,支持一下,感谢了!❤️❤️❤️ 前篇简单介绍了什么是网络爬虫及相关概念,这篇开始讲解爬虫中的第一个库——urllib。 urllib🍭 …

RestTemplate发送HTTPS请求

RestTemplate发送HTTPS请求 基础知识: Https原理与工作流程及证书校验:https://www.cnblogs.com/zjdxr-up/p/14359904.html 忽略ssl证书的方式配置: import lombok.extern.slf4j.Slf4j;import org.springframework.http.client.SimpleClien…

PPT系统化学习 - 第1天

文章目录 更改PPT主题更改最大撤回次数自动保存禁止PPT压缩图片字体嵌入PPTPPT导出为PDFPPT导出为图片PPT导出为图片型幻灯片PPT导出成视频添加参考线设置默认字体设置默认形状建立模板、保存模板、使用模板建立模板保存模板使用模板 更改PPT主题 更改PPT的主题: 夜…

图像处理: ImageKit.NET 3.0.10704 Crack

关于 ImageKit.NET3 100% 原生 .NET 图像处理组件。 ImageKit.NET 可让您快速轻松地向 .NET 应用程序添加图像处理功能。从 TWAIN 扫描仪和数码相机检索图像;加载和保存多种格式的图像文件;对图像应用图像滤镜和变换;在显示屏、平移窗口或缩略…

基于springboot+vue的新闻推荐系统

目录 前言 一、技术栈 二、系统功能介绍 管理员模块的实现 用户信息管理 排行榜管理 新闻信息管理 用户模块的实现 首页信息 新闻信息 我的收藏 三、核心代码 1、登录模块 2、文件上传模块 3、代码封装 前言 随着信息互联网购物的飞速发展,国内放开了自…

基于springboot实现二手交易平台管理系统演示【项目源码】分享

基于springboot实现二手交易平台管理系统演示 java简介 Java语言是在二十世纪末由Sun公司发布的,而且公开源代码,这一优点吸引了许多世界各地优秀的编程爱好者,也使得他们开发出当时一款又一款经典好玩的小游戏。Java语言是纯面向对象语言之…

多维时序 | MATLAB实现WOA-CNN-GRU-Attention多变量时间序列预测(SE注意力机制)

多维时序 | MATLAB实现WOA-CNN-GRU-Attention多变量时间序列预测(SE注意力机制) 目录 多维时序 | MATLAB实现WOA-CNN-GRU-Attention多变量时间序列预测(SE注意力机制)预测效果基本描述模型描述程序设计参考资料 预测效果 基本描述…

stable diffusion和gpt4-free快速运行

这是一个快速搭建环境并运行的教程 stable diffusion快速运行gpt快速运行 包含已经搭建好的环境和指令,代码等运行所需。安装好系统必备anaconda、conda即可运行。 stable diffusion快速运行 github: AUTOMATIC1111/稳定扩散网络UI:稳定扩散网页用户界…

InnoDB的BufferPool

title: “InnoDB的BufferPool” createTime: 2022-03-06T15:52:4108:00 updateTime: 2022-03-06T15:52:4108:00 draft: false author: “ggball” tags: [“mysql”] categories: [“db”] description: “” InnoDB的BufferPool 为什么需要缓存? 因为存储引擎需…