分类: nosql

innodb文件架构体系(mysql8)

文件分类参数文件 概述告诉MySQL实例启动时在哪里可以找到数据库文件,并且指定某些初始化参数,这些参数定义了某种内存结构的大小等设置,还会介绍各种参数的类型。 路径 1/var/lib/mysql/ 相关命令 1234show [global] variables like "%xxxxx%";set key value;s

mysql分表实践

停机部署1.挂牌停机通告2.通过写的脚本(直接按游标取出数据进行迁移)按照规定逻辑进行分库分表(也可以使用工具)3.重写中间件按照逻辑访问数据库4.上线 优点 比较容易,不用考虑这时的用户操作,无脑迁移数据 缺点 系统必须停机,客户体验差 必须在规定时间完成迁移及数据校验 不停机部署数据双写迁移法1.老库和新库同时insert/update/delete,然后将老数据批量迁移到新库,最

innodb索引为什么使用b+树?

磁盘io与预读考虑到磁盘IO是非常高昂的操作,计算机操作系统做了一些优化,当一次IO时,不光把当前磁盘地址的数据,而是把相邻的数据也都读取到内存缓冲区内,因为局部预读性原理告诉我们,当计算机访问一个地址的数据的时候,与其相邻的数据也会很快被访问到。每一次IO读取的数据我们称之为一页(page),具体一页有多大数据跟操作系统有关,一般为16k,也就是我们读取一页内的数据时候,实际上才发生了一次IO,

查询截取

前言之对如何sql优化 1.观察至少跑一天,看看生产慢的sql 2.开启慢查询日志,设置阈值,比如超过5秒的就是慢sql,将它抓取出来 3.explain + 慢sql分析如果explain解析不出来进入第四步 4.show profile 查询sql在mysql服务器里面的执行细节和生命周期情况 5.运维经理或dba进行sql数据库服务器的参数调优 12345数据优化四部曲:1.慢查询的抓取2

主从复制

概述在实际的生产中,为了解决Mysql的单点故障已经提高MySQL的整体服务性能,一般都会采用「主从复制」。比如:在复杂的业务系统中,有一句sql执行后导致锁表,并且这条sql的的执行时间有比较长,那么此sql执行的期间导致服务不可用,这样就会严重影响用户的体验度。主从复制中分为主服务器(master)和从服务器(slave),主服务器负责写,而从服务器负责读,Mysql的主从复制的过程是一个异步

锁机制

概述锁是计算机中协调多个进程或线程并发访问某一资源的机制。 锁的分类按数据操作类型分分为读锁和写锁 1.读锁 共享锁-S锁-乐观锁针对同一份数据,多个读操作可以同时进行而不会互相影响 2.写锁 排他锁-X锁-悲观锁当前写操作没有完成前它会阻断其他写锁和读锁 按数据操作粒度分行锁和表锁和页锁 表锁偏向MYISAM存储引擎,开销小,加锁快,无死锁,锁定粒度大,发生锁冲突的概率最高,并发度最低。

MHA

概述简介类似redis sentinel解决集群单点故障,分为MANAGER单独配置管理服务器,NODE主从安装node监控。 1.监控 2.sentinel 部署MHA(类似hadoop) 1.软连接 12ln -s /app/mysql/bin/mysqlbinlog /usr/bin/mysqlbinlogln -s