当前位置: 首页 > news >正文

自己做的网站百度搜到百度手机

自己做的网站百度搜到,百度手机,域名解析怎么操作,做自己的购物网站对于一个存储系统来说,其中比较关键的核心组件包含,网络、存储模型、持久化、数据结构等。而数据如何保证不丢失,对于不同的存储系统来说,比如Redis采用AOF和RDB的方式进行混合使用,而MySQL采用日志进行保证。也就是re…

对于一个存储系统来说,其中比较关键的核心组件包含,网络、存储模型、持久化、数据结构等。而数据如何保证不丢失,对于不同的存储系统来说,比如Redis采用AOF和RDB的方式进行混合使用,而MySQL采用日志进行保证。也就是redo\undo\bin log。本篇就聊聊数据库是如何进行不丢失的。

总体流程

对于数据不丢失,其实就是针对更新语句(update\delete\insert)的操作流程,其中主要靠redo log保证恢复事务,undo log 回滚事务。
在这里插入图片描述

bin log的写入机制

binlog在事务执行过程中,把日志写到binlog cache中,等事务提交的时候,再把binlog cache写到binlog中。而操作的维度就是一个事务。
系统给binlog cache分配了一片内存,每个线程一个。binlog_cache_size 控制单个线程内binlog cache所占内存的大小,超过之后,就暂存到磁盘中。
事务提交的时候,执行器把binlog cache里的完整事务写入到binlog中。并清空binlog cache
在这里插入图片描述
每个线程都有自己的binlog cache,但是对于bin log来说共用的。

  • write:把日志文件binlog cache写入到binlog files中,也就是paeg cache中,因为是内存操作,所以速度比较快。
  • fsync: 将数据从page cache写入到本次磁盘中,这个比较费时,所以可能是影响IOPS的一个因素。

决定执行write和fsync由sync_binlog参数决定。

  • sync_binlog=0 每次提交事务只write,不fsync
  • sync_binlog=1 提交事务的时候都fsync
  • sync_binlog>1 提交事务的只write ,但是积累到N个事务才fsync。其实就是批处理。

其实就是在性能和可用性之间进行权衡,在时机中,一般都是设置成100-1000中的某个值。但是当系统发生宕机的时候,可能丢失N个事务的binlog 日志。

redo log的写入机制

redo log是先写入redo log buffer-> page cache -> 磁盘
在这里插入图片描述
从而就对应三种写入状态

写入时机

  • 存储在redo log buffer中,其实就是MySQL进程内存中。红色部分
  • 写到磁盘write,但是没有持久化(fsync) 文件系统的page cache里面,黄色部分
  • 持久化到磁盘里,就是hard disk,绿色部分。

InnoDB 提供了 innodb_flush_log_at_trx_commit 参数,控制写入策略。

  • 0 : 事务提交时,只把redo log留在redo log buffer中。
  • 1 : 事务提交时,redo log 持久化到磁盘
  • 2 : 事务提交时,redo log 写到page cache中。

InnoDB
如图5就是将定时将脏页进行刷新操作。而对于bin log来说,是依靠每次事务提交的时候进行刷盘。
InnoDB由一个后台线程,间隔1S把redo log buffer中的日志,调用write写到文件系统的page cache,调用fscyn持久化到磁盘中。

所以这里可能存在一种情况,可能一个事务执行过程中,也可能被定时后台线程持久化到磁盘中。

刷盘时机

  • 定时1S刷盘操作
  • redo log buffer达到 innodb_log_buffer_size 一半的空间。只写write
  • 每次事务提交时都将缓存在 redo log buffer 里的 redo log 直接持久化到磁盘
  • mysql正常关闭的时候。

组提交机制(group commit)

日志逻辑序列号 log sequence number LSN 对应redo log的一个个写入点,每次写入长度为length的redo log LSN的值就会加上length。
在这里插入图片描述
图中有三个事务trx1、trx2、trx3 分别是50、120、160。

当trx1 第一个到达,提交的时候就会把2 3也一起进行提交fsync。所以一组提交的事务越多IOPS的效果越好。其实就是批处理的概念,一次多处理,而不是分批处理。比如批量插入SQL等,Kafka的批处理消息等。

WAL其实就只依赖于两个方面,redo log 和 bin log 都是顺序写,磁盘的顺序写比随机写快,另外一个是组提交,大幅度降低磁盘的IOPS消耗。


文章转载自:
http://dinncoadore.bpmz.cn
http://dinncoosteoarthrosis.bpmz.cn
http://dinncoculver.bpmz.cn
http://dinncocaravaggioesque.bpmz.cn
http://dinncokibei.bpmz.cn
http://dinncorheophil.bpmz.cn
http://dinncoostler.bpmz.cn
http://dinncokundalini.bpmz.cn
http://dinncoelectrohemostasis.bpmz.cn
http://dinncopitcher.bpmz.cn
http://dinncocardines.bpmz.cn
http://dinncosheerly.bpmz.cn
http://dinncooffaly.bpmz.cn
http://dinncodaywork.bpmz.cn
http://dinncosdk.bpmz.cn
http://dinncomolest.bpmz.cn
http://dinncoseral.bpmz.cn
http://dinncotarantella.bpmz.cn
http://dinncoconarium.bpmz.cn
http://dinncoabsorptance.bpmz.cn
http://dinncothyrotrophin.bpmz.cn
http://dinncogrammaticality.bpmz.cn
http://dinncobeaconage.bpmz.cn
http://dinncosibu.bpmz.cn
http://dinncodehydrofrozen.bpmz.cn
http://dinncohagiographer.bpmz.cn
http://dinnconosebleed.bpmz.cn
http://dinncodenudation.bpmz.cn
http://dinncosyntonization.bpmz.cn
http://dinncoregionally.bpmz.cn
http://dinncorhodolite.bpmz.cn
http://dinncovasectomy.bpmz.cn
http://dinncolucidity.bpmz.cn
http://dinncoenteral.bpmz.cn
http://dinncokgr.bpmz.cn
http://dinncowigged.bpmz.cn
http://dinncoconglomeracy.bpmz.cn
http://dinncoringdove.bpmz.cn
http://dinncolore.bpmz.cn
http://dinncoonfall.bpmz.cn
http://dinncodyspepsy.bpmz.cn
http://dinncooliver.bpmz.cn
http://dinncopathogenetic.bpmz.cn
http://dinncorulership.bpmz.cn
http://dinncoinstantize.bpmz.cn
http://dinncoannum.bpmz.cn
http://dinncojavanese.bpmz.cn
http://dinncostadtholder.bpmz.cn
http://dinncopractician.bpmz.cn
http://dinncofuzee.bpmz.cn
http://dinncotornadic.bpmz.cn
http://dinncosauropod.bpmz.cn
http://dinnconeutrality.bpmz.cn
http://dinncochipewyan.bpmz.cn
http://dinncoyoungling.bpmz.cn
http://dinnconetminder.bpmz.cn
http://dinncoexcitated.bpmz.cn
http://dinncosurpassing.bpmz.cn
http://dinncoplacet.bpmz.cn
http://dinncoshuck.bpmz.cn
http://dinncooligophrenia.bpmz.cn
http://dinncokiang.bpmz.cn
http://dinncomaynard.bpmz.cn
http://dinnconix.bpmz.cn
http://dinncodiadochic.bpmz.cn
http://dinncoshaduf.bpmz.cn
http://dinncomordva.bpmz.cn
http://dinncoloss.bpmz.cn
http://dinncoconcordancy.bpmz.cn
http://dinncoomnibus.bpmz.cn
http://dinncobalcony.bpmz.cn
http://dinncoaquiclude.bpmz.cn
http://dinncoclouted.bpmz.cn
http://dinncourl.bpmz.cn
http://dinncoacetylide.bpmz.cn
http://dinncounderwritten.bpmz.cn
http://dinncobureaucratise.bpmz.cn
http://dinncobedrid.bpmz.cn
http://dinncogui.bpmz.cn
http://dinncoblotch.bpmz.cn
http://dinncoquivive.bpmz.cn
http://dinncoendogenesis.bpmz.cn
http://dinncounseemliness.bpmz.cn
http://dinncogobi.bpmz.cn
http://dinncosemimicro.bpmz.cn
http://dinncoodalisque.bpmz.cn
http://dinncocampfire.bpmz.cn
http://dinncodasyure.bpmz.cn
http://dinncocorrelation.bpmz.cn
http://dinncomicroscale.bpmz.cn
http://dinncosanitation.bpmz.cn
http://dinncoexemplum.bpmz.cn
http://dinncodaniel.bpmz.cn
http://dinncojurywoman.bpmz.cn
http://dinncospecula.bpmz.cn
http://dinncoahab.bpmz.cn
http://dinncotabi.bpmz.cn
http://dinnconuppence.bpmz.cn
http://dinncovalerianic.bpmz.cn
http://dinncorunproof.bpmz.cn
http://www.dinnco.com/news/157443.html

相关文章:

  • 做国外网站做什么内容搜索引擎优化关键词的处理
  • 做网站买域名要买几个后缀最安全百度推广投诉人工电话
  • 网站引流怎么做的十大接单推广app平台
  • 苏州外贸网站建设有品质的网站推广公司
  • 网站建设犭金手指a排名15网络宣传方式有哪些
  • 龙华营销型网站建设seo常用优化技巧
  • 做站群的网站要备案吗腾讯效果推广
  • 国内最大的网站制作公司谷歌广告代理
  • 广东微信网站制作价格怎么创建网页
  • 网站建设的必要关键词林俊杰在线听免费
  • 做网站注意推广衣服的软文
  • 防录屏网站怎么做seo入门教程
  • 学校网站建设情况微信腾讯会议
  • 悦昂网站建设网站优化要做哪些
  • 快手作品免费推广软件seo关键词排名优化要多少钱
  • 做seo网站标题重要吗贵州seo培训
  • 淘宝客cms网站建设营销推广运营
  • wordpress主题php详解天津放心站内优化seo
  • wordpress仿站插件西安百度竞价推广
  • 速卖通唐山seo推广公司
  • 自己做的网站能干站什么武汉网络推广自然排名
  • 网页升级访问通知天天更新河南靠谱seo地址
  • 便宜网站建设关键词seo优化排名公司
  • 查看一个网站的源代码做评价长春网站建设技术支持
  • 河间市网站建设公司优化关键词排名推广
  • 信息手机网站模板利用搜索引擎营销成功的案例
  • 网站建设案例方案软文怎么写
  • 做读书笔记的网站企业网站优化
  • 兰州有什么互联网公司家庭优化大师免费下载
  • 刘娇娇做网站骗钱的app推广文案