记一次hadoop集群故障排查
摘要:场景:同事反馈 hadoop集群namenode服务器故障,hadoo集群不可用 现象:hadoop集群有两个namenode,A处于active状态,正常提供服务,B处于standby状态,作为备份,其中A节点挂掉且无法重启,但是B节点仍然处于standby状态,并没有切换 处理:1 首先 zkf
阅读全文
基于K8s调度器实现自定义调度
摘要:背景:为了实现基于K8s的数据库服务的调度功能 难点: 1,原生K8s的资源只有cpu和mem,但是MySQL调度需要考虑磁盘资源, 2,原生调度策略不符合线上环境,比如线上容器和物理机存在混跑,服务存在定制策略等 方案: 1,基于K8s 调度器的源码进行修改,定制化调度器,所有服务器调度时指定新调
阅读全文
MySQL笔记七-参数
摘要:[mysqld] port = xxxx MySQL通信的端口 user = myxxxx MySQL 默认的用户,即目录用户的用户名,用户组是mysql datadir = /data1/mysqlxxxx 数据目录的位置 basedir = /usr/local/mysql-5.7.24 MyS
阅读全文
kafka2.7.1集群搭建以及在SASL/PLAIN下实现动态权限
摘要:记录下在搭建 kafka 2.7.1 版本过程中遇到的一些问题及解决方案 背景 目前的三套kafka集群版本比较老,0.9,1.0,1.1版本,并且磁盘容量即将到达限制,无法满足日益增长的产品需求,故计划重新搭建一套新版本的kafka集群 本次搭建的目的 进行测试,计划搭建一套三节点的kafka集群
阅读全文
MySQL笔记六-innodb引擎的关键特性
摘要:本节内容同 MySQL笔记六-innodb存储引擎是一起的,由于内容比较多,排版不想弄,就单独放一节,但是大序号不变,都是六 insert buffer insert buffer需要满足的条件 :insert的 索引是非唯一辅助索引。 什么是insert buffer?简单的说就是当insert一
阅读全文
MySQL笔记六-InnoDB存储引擎
摘要:Innodb的体系架构 innodb的线程 innodb是多线程模型,后台存在多个不同的后台线程,总览innodb的发展路径,会发现随着硬件技术的发展,CPU的数量越来越多,innodb不断的将主线程中的功能拆分出来,使用独立的线程处理,这是为了更好的利用多核CPU,提高效率并减轻主线程的压力。 M
阅读全文
MySQL笔记五-MVCC
摘要:什么是MVCC MVCC即为多版本并发控制,是一种用于提高并发量的方法,其可以有效的提高innodb引擎数据库的并发性能,做到即使有读写冲突,也能不加锁并发读。 什么是当前读和快照读 当前读:select lock in share mode(共享锁), select for update ; up
阅读全文
MySQL笔记四-字符集和排序规则
摘要:碰巧今天遇到两个业务询问关于字符集和排序规则的问题,本次就研究下这个 具体的问题如下 问题1: CREATE TABLE IF NOT EXISTS `t_todo_file` ( `id` int(11) NOT NULL AUTO_INCREMENT, .... PRIMARY KEY (`id
阅读全文
MySQL笔记三-事务-group commit
摘要:redo log的组提交 WAL是事务实现持久化的常用技术,基本原理是在非只读事务提交时,将redo log顺序写入磁盘,就视为事务提交完成,不需要等到事务的修改页落盘,这是为了用顺序写代替随机写,提高事务的commit速度。redo log落盘后,即使事务没有正常commit,crash reco
阅读全文
MySQL笔记三-事务-redolog
摘要:redolog,即重做日志,用于实现事务的持久性,由重做日志缓存(redo log buffer)和重做日志文件(redo log file)两部分组成。 大致流程如下 需要注意的是 1,redo log 在事务执行过程中不断写入的,binlog是在事务提交时一次性写入的 2,redo log 固化
阅读全文
MySQL笔记三-事务-undolog
摘要:undo log 即重做日志,记录了事务的行为,在事务执行失败\回滚时。可以利用undolog将数据回滚到之前的状态,此外mvcc也是通过undo log实现。 之前说过redo log是放在ib_logfile里的,undo log是放在共享表空间,即ibdata1里(8.0 将undo 单独拿出
阅读全文
MySQL笔记三-事务
摘要:InnoDB引擎中的事务符合ACID特性,即 A,原子性 atomicity B, 一致性 consistency I , 隔离性 isolation D,持久性 durability 正是由于事务的ACID特性,使得事务可以将数据库从一个一致性状态转换到另一个一致性状态 下面分类说明 1,原子性。
阅读全文
MySQL笔记二—索引
摘要:索引 如同书籍的目录,索引存在的价值就是加速查询,合适的索引可以显著的提高查询效率,需要注意的是 合适 的索引,索引不是万能的,但是不用索引是万万不能的 索引的主要用处有三 1,减少扫描数据的行数 2,避免服务器排序和临时表 3,将随机io变成顺序io 索引的类型 索引主要有Btree,哈希,全文和
阅读全文
mysql笔记1-数据类型选择
摘要:首先是数据类型选择的总的逻辑 1,通常情况下越小越好--节省空间 2,通常情况越简单越好--节省算力,整型的计算量显然小于char,更别提其他类型 3,避免NULL--1)被索引时多用一个字节;2)索引,比较计算时更复杂;3)被索引时更难优化;4)业务写入数据时,如果忘写这个值,也不会报错(置为nu
阅读全文
ceph的部分知识点
摘要:最近计划将基于ceph实现mysql的快速扩容,故提前先了解下ceph相关的知识,信息主要来源于一些博客和官方文档,主要介绍了基本的原理,架构,策略,特性等。能找到的话,后面会找一些ceph + mysql的案例看看。 ceph的基本架构由 OSDs,Monitors,和MDS三部分组成。外加cli
阅读全文