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

【java】mysql

在这里插入图片描述

优化

1. 定位慢查询

在这里插入图片描述
怎么找出执行慢的sql?
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
如果是index 或是 all,则需要优化sql。
在这里插入图片描述

2. 索引

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
使用explain判断索引失效:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
原因是进行了自动的类型转换,原本status应该是string,不加单引号会将数字0转化成字符0,类型转换会导致索引失效。
在这里插入图片描述
在这里插入图片描述

3. sql优化经验

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

事务相关

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
隔离级别从上往下安全性越高,但性能越差!
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
如果没有出现服务器宕机,buffer pool的脏页数据可以正常同步到磁盘是,redo log就不发挥作用。每隔一段时间redo log file就定期清理,磁盘中有两份,循环写。

WAL(write ahead logging):在数据本身的修改被持久化到磁盘之前,必须先确保描述这些修改的日志记录已经持久化到磁盘。换句话说:先写日志,后写数据。

用快速的顺序I/O(Redo Log)来保证事务的持久性,而将慢速的随机I/O(数据页刷盘)推迟到后台异步进行,从而在保证数据安全的同时大幅提升性能。

summary:当出现问题时使用redo log恢复,保证数据的持久性!此时的流程为:
事务开始–>在内存中修改数据页–>生成redo log记录–>redo log强制刷盘fsync–>返回事务提交成功–>后台异步刷脏页到磁盘数据页。
在这里插入图片描述
undo log工作流程:事务开始–>数据修改前将相反操作写入undo log–>在内存buffer pool中修改数据–>是否提交?–>是:标记undo log可以清理–>否?用undo log回滚到旧数据。
在这里插入图片描述 redo log:保证事务的持久性;undo log:保证事务的原子性和一致性。 持久性:事务一旦提交,它对数据库的修改就是永久性的,即使发生系统崩溃也不会丢失。由上文可以,发生崩溃可以根据redo log file来进行崩溃前的恢复:找到最后一个Checkpoint,重放从Checkpoint之后的所有Redo Log。

原子性:事务中的所有操作要么全部完成,要么全部不完成,不可能停留在中间状态。 一致性:事务必须使数据库从一个一致性状态变换到另一个一致性状态。因此当系统崩溃时,可以使用undo log回滚所有没有commit的事务!

完整的崩溃恢复流程:

  1. redo log重做已提交的操作;
  2. undo log回滚未提交的操作。

MVCC

事物的隔离性如何保证?
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
当前读:对扫描的数据加锁–>等待持有该数据锁的事务释放锁–>获取锁成功–>读取数据的最新版本。

快照读:确定read view–>遍历每行数据–>检查行的事务id–>事务id<read view创建时间且已提交,则该行可见–>事务id>创建时间或未提交,则该行不可见,沿着undo链找到旧版本–>返回可见的行。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

MySql主从同步原理

在这里插入图片描述
在这里插入图片描述

分库分表

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

http://www.dtcms.com/a/479823.html

相关文章:

  • 书店手机网站模板个人网站怎么备案可以做哪些
  • 网站大学报名官网入口世界500强企业排名表
  • 查企业信息的国家网站wordpress多城市seo
  • 反转链表及其应用(力扣2130)
  • 沈阳教做网站能挣钱的平台 正规的
  • 合肥企业网站建设公司提供网站建设商家
  • 西安建设学院网站首页wordpress网站设置关键词
  • Java学习之旅第三季-2:异常处理机制之抛出异常
  • 天津市南开区网站开发有限公司小微企业所得税优惠政策
  • 建站之星app公司网站做论坛
  • 做食品那些网站好磁力猫torrentkitty官网
  • 苏州网站建设推广贵阳网络营销推广专家
  • 深圳网站优化页面好看的个人博客主页
  • 第四届声学,流体力学与工程国际学术会议(AFME 2025)
  • 成都广告公司网站建设邯郸求职信息网
  • 杂记 14
  • 后训练技术介绍
  • 怎样做百度推广网站wordpress登陆头像
  • 虚拟主机网站建设步骤?wechat官方下载
  • 网站测速南昌网站建设渠道
  • PMP-项目管理-PMBOK第六版_中文版:管理工具
  • MySQL——事务管理
  • html5网站后台公司网站制作合同
  • 网站建设搭配网站优化成功案例
  • C++浮点数取余函数fmod()介绍
  • riscv将全局变量固定到指定的地址
  • 设计公司是建筑企业吗seo一个空间建多个网站
  • seo整站优化哪家好桂林做网站电话号码
  • 网站不备案黑龙江省特种证查询
  • 网站设计交流网站关键词优化代理