常用网名:门牙没了。8年MySQL运维管理与架构设计经验。前新浪爱彩DBA主管,曾下海做过技术培训,目前是新加坡SEA的资深DBA,负责整个东南亚地区MySQL集群的运维调优与运维平台的开发。
前言: MyCat支持大概有20多种分片规则,除了常规的按RANGE、LIST、HASH、DATETIME分片之外,还首创了E-R分片规则,也支持用户自定义分片规则。在Sharing的支持上算是比较全面了。
前言: 使用MyCat的朋友应该有很大一部分是要做sharding的,而拆分面临的很大一个问题就是全局自增序列没有了。MyCat的开发人员早就考虑到了这一点,并提供了实现全局自增序列的方案,实现方式大概有“本地文件”、“数据库”、“本地时间戳”、“catlet注解”、“zookeeper”、“last_insert_id”这几种。
0.前言 Sysbench的作者于2016年将十年未变的sysbench升级至1.0版本,较老版本有了非常大的改变。在使用过程中由于官方文档不太完善,遂有此文。 1.新特性 官方文档中的升级说明: 更好的性能和扩展性,比0.4版本快了3.44倍,比0.5版本快了6.44倍。
前言: CentOS 6.X上面安装的python默认版本为2.6.6,但是现在很多库都是要求python2.7,因此一个新系统上面要做的第一件事就是升级Python。
在异地机房部署了一个MySQL灾备库,部署之后复制看起来是正常的,但是观察MySQL错误日志却发现复制线程每隔30秒左右都会断线重连一次。 MySQL输出的错误日志: 170110 16:07:00 [ERROR] Error reading packet from serve...
前言: 例行巡检是节假日来临之前的必做项目,对服务器做一轮全面的健康检查,一方面可以确保节假日期间服务器的稳定,另外还可以检查一下平时监控没覆盖到的地方。 连《炉石传说》这么强大的运维团队都能把数据弄丢,你还有什么理由不做一次巡检呢? 巡检主要分如下4个层面: 1.硬件 2.操作系统 3.数据库 4.架构 5.ETL 巡检项目: 如需详细大图与备注请直接联系我,站内不允许上传mindmanger格式的文件。
前言 在MySQL服务器断电或者kill mysqld进程后,再操作数据库会发生莫名其妙的重启,我们下面就根据一个案例,来逐步的进行分析和诊断,解决这种常见的问题。
1.为查询缓存优化你的查询 例:curdate()、now()、'2015-01-01',前两者都不能利用到数据库的查询缓存,尽量采用常量 2.不使用永久链接 3.innodb_read_io_threads的调优:看innodb状态,如果pending read较大,则调整,调整后观察pending read 4.SQL_NO_CACHE的真正作用是禁止缓存查询结果,但并不意味着cache不作为结果返回给query。
1. auto_increment_increment 和 auto_increment_offset (重) 这两个参数用于高可用中M-M复制。auto_increment_increment控制AUTO_INCREMENT列的增量,auto_increment_offset确定AUTO_INCREMENT列值的起点。
前言: 此工具可以读取当前my.cnf的设定值与实际环境的状态值,输出一个非常友好的报表并给出优化建议。 安装: root#wget http://www.
1.卸载多个相同的rpm包 rpm -e --allmatches
1.切换到root用户 sudo -s 2.安装软件 apt-get install xxx 3.查看程序安装路径 dpkg -L xxx
1.启动前要mkdir /data/db 2.mongod才是数据库启动程序,mongo是shell 3.db命令显示当前db ,use foobar命令切换当前db 4.
一知半解型的误操作: kill错进程;删除了认为没用的日志;解压文件错误地覆盖了应该保留的文件;调整错了一个参数等等。 鬼打墙型的误操作: 由于疲劳/烦躁/精神恍惚等说不清的原因,敲下错误的命令,引起灾难,这在围棋领域被称为“昏招”,比如rm误操作(许多运维人员见到rm就神经紧张)等等。
1.先查看是否有已添加的规则 iptables -L -n 2.自行判断是否清理,清理的命令如下 iptables -F 清除预设表filter中的所有规则链的规则 iptables -X 清除预设表filter中使用者自定链中的规则 iptables -Z 把所有链的包及字节的计数器清空 3.
1.首先编辑普通用户的.bash_profile alias ToROOT='sudo /bin/su -' 再使其生效source .bash_profiles 2.在root账号下编辑sudoers文件 visudo 在root账号的下一行添加如下内容 Cmnd_A...
前言: 某论坛因性能不佳,升级到了X3.2版本.但是升级后却发现楼层乱了.仔细研究了一下发现,cdb_forum_post表新增了position字段,并且是自增属性.
注:因官方MySQL下载较慢,请先自行上传mysql安装包至/usr/local/src目录 #!/bin/bash #This shell script can be used to install mysql instances automatically #Written by LiHui #Version 1.
0.安全提示 因root账号启动mysql数据库存在严重安全隐患,请在启动时使用mysql账号! 1.源码方式安装mysql5.5 GA 创建组和用户: [root@mysqldb2 ~]# groupadd mysql [root@m...
前言: mysql cluster作为mysql官方的一个集群软件,一直是不温不火的存在,用的较多的仍是mysql-server,本文就基于mysql cluster的特性,分析一下什么场景下适合使用mysql cluster。
前言: Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。如今已经成为web开发社区中最火热的内存数据库之一。
一.前言 在mysql的实际生产环境中,配置了mysql双机多实例+主从复制,并且准备设置为双机多实例+双master,以增加mysql实例的高可用性。经过研究,仅keepalived无法实现多实例上的高可用,于是采用lvs+keepalived以实现mysql多实例+双master上的高可用.LVS和Keepalived介绍:LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统。
简介: Xtrabackup是percona公司的一个开源项目,用于InnoDB和MyISAM的热备份。是商业备份工具InnoDB Hot Backup的一个很好的替代品。
环境:Oracle goldengate通过读取/tmp/mysql.sock来同步数据。 故障:mysql.sock经常无故丢失,查看日志、history找不到任何被删除的迹象。 问题分析与解决:Google了一下,发现是tmpwatch自动删除机制导致的。
需求内容是生成固定长度的字符串,首位必须是指定数字开头。实现的存储过程和函数如下: CREATE DEFINER=`root`@`localhost` PROCEDURE `proc_data`(IN iteme INT) BEGIN DECLARE var INT DEFA...
mysql无法连接数据库,连root账号都无法连接进去。查看错误日志发现有很多错误:[ERROR] Error in accept: Too many open files。 查看global参数open_files_limit=1024,但是my.cnf里面open_files_limit = 65535 , 查看操作系统的ulimit -n也是1024,因此断定是mysql打开文件数过多超出限制导致。
摘要: 在实际工作中遇到了mysql服务器硬盘挂掉的情况,并且无slave无备份。此时就只能去恢复硬盘的数据了。本文根据一次实战操作整理,分别用4种办法尝试修复数据。
问题描述: 使用的缓存系统是memcached,SQL更新周期是10min,更新的sql运行时间是1s,在更新缓存时缓存失效,第一个进程会去数据库请求新数据,但是在未返回结果之前,后续的进程也进入到数据库中请求新数据。
1.alter ignore table 添加unique key不生效的问题 可参考链接http://guduwhuzhe.iteye.com/blog/17625932.update语句在语法不规范的情况下不报错,并且更新了一个错误的值。
1.无法启动,ERROR日志报如下错误: 131230 9:23:27 [ERROR] Can't start server: Bind on TCP/IP port: Address already in use 131230 9:23:27 [ERROR] Do y...
一、MHA概述 MHA是由日本Mysql专家用Perl写的一套Mysql故障切换方案以保障数据库的高可用性,它能在0-30s之内实现主Mysql故障转移。 适用场景: 个人认为此系统非常适合一主挂多从的拓扑结构。
一、关于NULL值 1.update null值时,格式为set col=null,不能是is null,不能是'null'。2.mysql中,Null值不等于'',oracle中,空字符串会被当成null保存。
一、表设计 1.采用ER模型,首先遵循范式设计,再根据实际需要进行反规范化设计。 2.库名、表名、字段名必须使用小写字母,“_”分割(TICKET库除外)。
官方版的部署流程中有几个需要注意的点,在此补充一下 部署master 第一步,yum安装perl-DBD-mysql即可,当然源码编译安装也可以。 第二步,修改myawr.sql,create table前加上use myawr;并修改账号的密码。
背景知识: 1.在计算机系统中,cache几乎无处不在,CPU、LINUX、MYSQL、IO等系统中均能见到cache的身影。Cache是容量与性能之间取平衡的结果,以更低的成本,获得更高的收益。
运行后即进入死循环,每隔一秒执行一次,清理几种经常引起负载高的sql。使用完毕后按ctrl+c退出 #!/bin/bash i=2 while(($i > 1)) do mysql -uroot -p'xxx' -S /data/mysqldata/3306/mysql.
第一章:引言 复制:就是复制一个服务器上的所有改变到另一个服务器 备份的功用:错误保护,建立新服务器,法律原因 监控:不监控就无法观察到有问题的查询、过热的从节点、使用不恰当的表等 第二章:mysql复制原理 1.
近期要完善mysql监控,故整理出此文档以备查阅。 以下监控内容均为mysql部分,linux操作系统部分未整理 如下为需要部署至zabbix的监控项: 需发短信报警的项: 1.