【MySQL】InnoDB锁机制之二
本文继续技术innodb 层面的锁 insert intrention lock 和 auto_inc lock
【工作】蚂蚁金服招DBA
工作机会,蚂蚁金服(支付宝)招聘 DBA
【MySQL】undo,redo,2PC,恢复思维导图
本文是结合视频和相关资料整理了一张思维导图,总结的时候,部分 OS/MySQL crash 的例子没有完全给出,以后也需要在完善一下,想深入了解这方面知识的同学,可以自己针对各种写入失败的场景,和主从不一致的场景做分析,我相信有经历这样比较全面的分析之后,对解决生产环境数据一致性问题很有帮助。
【MySQL】MyRocks 漫谈
最近一两年,数据库技术尤其是MySQL方面的发展可谓百花齐放,TokuDB,MyRocks ,MySQL 5.7 GA,MySQL 8.0 doc release 其软件也在开发当中,ALiSQL 开源。其中有功能上的改进的,也有针对Innodb 本身缺陷(主要是存储空间方面的)做优化的,作为数据库技术方面的从业者多少有些应接不暇。结合今年ACMUG 技术大会上的技术分享,Percona官方对MyRocks的表态,阿里在技术上的研究,落地来看,可以明显感觉到Myrocks是一种发展趋势。本文将对MyRocks做一个简单的了解
【MySQL】InnoDB锁机制之一
本文侧重点介绍Record lock ,Gap lock,Next-key Lock 三种锁 在RR 模式下的表现。
【Python】ConfigParser模块
最近研究备份恢复MySQL数据库实例,老的数据配置和新的实例的my.cnf 配置不统一,依赖backup-my.cnf 来判断innodb_data_file_path 参数是否修改修改。如何解析 my.cnf 呢?于是研究了Python提供ConfigParser模块。该模块可以完成针对常见的配置文件的读取和修改操作,基本满足需求。
【Python】supervisor 工具介绍
Supervisor是一款基于Python的进程管理工具,可以很方便的用来管理服务器上部署的程序。supervisor是C/S模型的程序,其server端是supervisord,client 端是supervisorctl ,思考一下当应用服务器要部署多个服务程序,机器关闭,重启,如何批量维护?此时supervisor是一个不错的选择。可以用 supervisor 同时启动所有应用程序而不用逐个启动。
【Python】轻量级分布式任务调度系统-RQ
Redis Queue 一款轻量级的P分布式异步任务队列,基于Redis作为broker,将任务存到redis里面,然后在后台执行指定的Job。就目前而言有三套成熟的工具celery,huey ,rq 。按照功能和使用复杂度来排序的话也是 celery>huey>rq. 因为rq 简单,容易上手,所以自己做的系统也会使用RQ作为分布式任务调度系统。
【MySQL】5.7新特性之六
本系列文章基于5.7.12 版本讲述MySQL的新特性,从安装,文件结构,SQL ,优化 ,运维层面 复制,等几个方面展开介绍5.7 的新特性和功能,同时也建议大家跟踪官方blog和 文档 ,以尽快知悉其新的变化。
【MySQL】数据库系统中的“黑天鹅”
稳定性是衡量一项基础服务的绝对指标,然而前一段时间,各种"黑天鹅"式因素导致一系列的故障。(作为数据库方面的老司机,实在汗颜) 最近一个多月一直紧盯这公司的慢查询这块做集中的优化,到目前为止效果相当不错,基本将慢查询减少了90%左右。
【招聘】杭州有赞招聘 MySQL DBA
为自己找一个靠谱的 DBA 伙伴。
【MySQL】Tokudb安装测试初探
TokuDB 是一个高性能、支持MVCC的MySQL 和 MariaDB 的存储引擎。TokuDB 的主要特点是数据压缩功能出色,对高写压力的支持,由美国TokuTek公司(http://www.tokutek.com/) 研发,该公司于2015年4月份被Percona收购,理所当然地提供了TokuDB版本的Percona Server。本文使用Peronca server 5.6.30 版本进行测试安装。
【MySQL】order by 原理以及优化
偏向于业务的(MySQL)DBA或者业务的开发者来说,order by 排序是一个常见的业务功能,将结果根据指定的字段排序,满足前端展示的需求。然而排序操作也是经常出现慢查询排行榜的座上宾。本文将从原理和实际案例优化,order by 使用限制等几个方面来逐步了解order by 排序。
【MySQL】5.7新特性之五
本系列文章基于5.7.12 版本讲述MySQL的新特性,从安装,文件结构,SQL ,优化 ,运维层面 复制,等几个方面展开介绍5.7 的新特性和功能,同时也建议大家跟踪官方blog和 文档 ,以尽快知悉其新的变化。
【MySQL】5.7新特性之四
本系列文章基于5.7.12 版本讲述MySQL的新特性,从安装,文件结构,SQL ,优化 ,运维层面 复制,GITD等几个方面展开介绍5.7 的新特性和功能,同时也建议大家跟踪官方blog和文档 ,以尽快知悉其新的变化。 前面写了一篇文章介绍 innodb 的特性,囿于相关特性比较多 ,本文继续介绍5.7版本的innodb 新特性。
【Python】模块之subprocess
在使用Python 开发MySQL自动化相关的运维工具的时候,遇到一些有意思的问题,本文介绍Python的 subprocess 模块以及如何和MySQL交互具体操作,如启动 ,关闭 ,备份数据库。
【Python】 模块之logging
Python 的logging 模块定义的函数和类为应用程序和库实现了一个灵活的事件日志系统。该模块提供多种日志级别并且支持多种记录日志的方式比如 终端,文件等等。在编写一个软件系统的时候 ,使用日志系统十分有必要 记录函数的执行过程和异常报错信息。本文算是一个学习笔记,对于跨文件引用的初学者有一定帮助。
【脚本】如何确保应用程序的唯一性
相信大家在开发脚本或者写程序的时候 ,大多会遇到如何判断已经有程序在运行的情况。比如设计备份binlog ,由于某个实例产生的binlog 数量大于备份的速度,在下一个时间点,会移动一个新的进程对binlog进行备份。那我们要怎么解决呢,本文分别从 shell和python的角度提出我的解决方法
【Redis】Redis 主从复制之一
和关系型数据库一样,Redis也有自己的高可用属性,主从复制,相比而言 redis的主从复制的搭建过程更为简单。本文简单介绍redis的主从复制原理和搭建过程。
【MySQL】5.7新特性之三
本系列基于5.7.12 版本来讲述MySQL的新特性,从安装,文件结构,SQL ,优化 ,运维层面 复制,等几个方面展开介绍5.7 的新特性和功能,同时也建议大家跟踪官方blog和文档,以尽快知悉其新的变化。