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

怎么制作网站后台市场调研流程

怎么制作网站后台,市场调研流程,国家安全人民防线建设网站,下载安装百度地图导航目录 1 redo log 2 binlog 3 Update执行逻辑 1 redo log InnoDB引擎特有日志MySQL的WAL(Writing Ahead logging)技术,预写式日志,先写日志再写磁盘当有一条记录需要更新时,InnoDB引擎就会先把记录写在redo log日志中&a…

目录

1 redo log

2 binlog

3 Update执行逻辑


1 redo log
  • InnoDB引擎特有日志
  • MySQL的WAL(Writing Ahead logging)技术,预写式日志,先写日志再写磁盘
  • 当有一条记录需要更新时,InnoDB引擎就会先把记录写在redo log日志中,然后在后面系统比较空闲的时候,将这个操作记录更新到磁盘里面
  • 记录的是物理日志,在某个数据页上做了什么修改
  • 空间大小固定,循环写入

redo日志相关配置

  • innodb_log_file_size:配置单个redo日志文件大小
  • innodb_log_files_in_group:配置redo日志文件个数
  • innodb_log_buffer_size:redo日志内存缓冲区大小
  • innodb_flush_log_at_trx_commit:redo日志缓冲区数据落盘时机
    • 0:每秒将redo日志缓冲区内容写入到文件系统缓存,再同步到磁盘
    • 1:每次提交时立即将redo日志缓冲区内容写入到文件系统缓存,再同步到磁盘
    • 2:每次提交立即将redo日志缓冲区内容写入到文件系统缓存,不立即同步到磁盘,由操作系统决定何时同步到磁盘

  • write pos是当前记录的位置,一边写一边后移,写到3号文件结尾时,就回到0号文开头
  • checkpoint是当前要同步磁盘的开始位置,边将数据同步到磁盘一边向后移动
  • wirte position和checkpoint之间是空闲位置,可以用来记录更新操作
  • 当wirte position追上checkpoint时,得先推进下checkpoint位置,才能继续写更新记录
  • redo log可以保证在数据库发生异常的情况下重启,之前提交的记录都不会丢失,这个能力称之为crash-safe
2 binlog
  • MySQL Server层的日志,也称为归档日志
  • 所有的存储引擎都可以使用
  • 主要用于归档,是逻辑日志,记录的是SQL语句
  • 追加写入,达到设置阈值时,切换新的binlog文件

binlog日志相关配置

  • server-id:开启binlog时,必须设置的唯一id
  • log-bin:配置binlog文件路径和前缀
  • binlog-format:指定binlog日志的格式
    • ROW:记录每一行的变化,占用空间大,但是记录的数据完整准确
    • STATEMENT:记录执行的SQL语句,sql中包含函数执行时会导致主从数据不一致问题
    • MIXED:根据情况自动选择ROW或者STATEMENT

expire_logs_day:设置binlog日志文件的保留天数,默认0,表示不删除旧的日志文件

max_binlog_size:设置单个binlog日志文件的最大大小,当达到该值时,会生成一个新的日志文件

binlog日志的操作

  • show master status:查看当前的日志文件及位置
  • purge binary logs:手动清理日志文件
    • purge binary logs to 'mysql-bin.0000010':删除到指定文件之前的日志
    • purge binary logs before '2025-03-01 00:00:00':删除到指定日期之前的日志
  • show binary logs:查看binlog日志文件列表
  • show binlog events:查看第一个binlog日志内的事件
  • show binlog events in 'mysql-bin.0000010':查看指定binlog日志文件中的事件

binlog解析的工具

  • mysqlbinlog
  • binlog2sql

3 Update执行逻辑

执行update语句内部流程

  • 执行存储引擎获取id=1的这一行,
  • 存储引擎使用索引进行查找如果id=1这一行所在数据本来就在内存就直接返回给执行器,否则先从磁盘内存然后返回
  • 执行器拿到存储引擎给的数据name设置lose得到新的一行数据调用存储引擎写入这行数据
  • 存储引擎更新数据更新内存同时更新操作记录redo log此时redo log处于prepare状态告知执行器执行完了随时可以提交事务
  • 执行生成这个操作binlog并把binlog写入磁盘
  • 执行器调用存储引擎提交事务接口刚刚写入redo log改成提交commit)状态此时更新完成

执行更新流程图

MySQL两阶段提交

  • prepare阶段
    • 数据写入redo log
    • 数据写入binlog
  • commit阶段
    • binlog提交commit请求
    • 调用innodb引擎发送commit请求

那么MySQL如何识别哪些提交属于一个事务呢?

  • redo logbinlog包含xid信息xid事务idMySQL实例全局唯一

崩溃恢复如何做呢?

  • redo log事务完成已经有了commit标识直接提交事务
  • redo log只有完整prepare没有commit标识此时需要binlog查找
    • 如果binlog已经commit提交事务
    • 如果binlog没有commit回滚事务
http://www.dtcms.com/wzjs/348685.html

相关文章:

  • 做网站公司 陕西渭南网络上如何推广网站
  • 公司网站怎么修改内容百度品牌广告收费标准
  • seo网站系统站长统计入口
  • 做推广网站哪家好市场推广是做什么的
  • 厦门建设网站如何自己创建网站
  • 怎么样才能创建自己的网站石家庄网站建设seo公司
  • 青岛网站建设价格加强服务保障满足群众急需m
  • 上海人才教育网官网seo搜索引擎优化价格
  • 徐州市网站开发百度seo优化方法
  • 怎么查网站做404页面没网上销售哪些平台免费
  • wordpress 图书馆主题aso搜索排名优化
  • iis7 建立网站可以免费推广的网站
  • 国防教育网站建设说明书口碑营销5t
  • 邢台建筑类的建设网站西安专业seo
  • 营销型网站建设团队河南省干部任免最新公示
  • 做论坛网站时应该注意什么友情链接检测平台
  • 公众号授权网站网络营销策略的概念
  • 网站优化计划书百度平台商户电话号码
  • 手机网站制作移动高端网站建设semseo
  • 上海市做网站免费手游推广平台
  • 个人网站设计app网站推广平台
  • 低价网站建设公司今日头条新闻头条
  • 竞价网站做推广方案十大计算机培训学校
  • 网络营销怎么做网站百度极速版免费下载安装
  • 网页设计和网站建设360优化大师app下载
  • 毕业作品是做网站的答辩会问什么seo的培训课程
  • 给上市公司做网站有什么用超级外链发布
  • wordpress静态页制作正规网站优化公司
  • 网站专栏建设情况东莞网站推广哪里找
  • 哪个网站做h5最好流程优化四个方法