目录 目录 一 引子 二 故障分析 三 故障解决 四 原理探讨 五 小结 文/温国兵 一 引子 研发反应,有台从库和主库不同步.由于业务读操作是针对从库的,数据不同步必定会带来数据的不一致,业务获取的结果会受影响,所以这个问题必须尽快解决. 登上服务器,查看 MySQL 的从库状态,并没有任何报错信息.刷新从库状态,发现状态没有任何变化,Exec_Master_Log_Pos 卡住不动. 二 故障分析 为了安全起见,此文略去 MySQL 版本以及其他可能会带来安全问题的信息. 接下来逐步分析问题…
夯住(Hang)是指程序仍在运行,卡在某个方法调用上,没有返回也没有异常抛出:卡住时间从几秒到几小时不等. Java程序发生Hang时,应该首先使用 jstack 把java进程的堆栈信息保存下来 ,供后继分析使用. 调用OSS Java SDK的程序Hang,有以下可能的情况及原因. 说明: jstack -l <pid> > js.txt可以把pid的堆栈信息保存到文件js.txt中.pid可以通过jps命令查找到. 抓包工具,Windows系统下推荐使用Wireshark.捕获筛选…
MySQL复制异常大扫盲:快速溯源与排查错误全解https://mp.weixin.qq.com/s/0Ic8BnUokyOj7m1YOrk1tA 作者介绍王松磊,现任职于UCloud,从事MySQL数据库内核研发工作,主要负责UCloud云数据库UDB的内核故障排查工作以及数据库新特性的研发工作. 复制作为MySQL原生的数据同步功能,在MySQL高可用架构中起着至关重要的作用.本文梳理了MySQL高可用产品UDB在日常运维中遇到的复制问题,并总结了当复制发生异常时,排查复制异常的方法. 一.…
表的数目在15585个,在使用use db的时候出现夯住 从show processlist中看到一堆表在做排序,想看看这些表的表结构.使用use db之后夯住,没有办法查看. 当时没有想到怎么办,鉴于当时数据量比较小在8G左右,故选择使用SSD紧急扩容以及前端辅助暂停流量. 后来想到一个临时的解决方案: show create table weitv_video.xxx 关于use db的时候MySQL做了哪些事情? 从general log可以看如下语句: ::   Connect root…
本文非常详细地介绍MySQL复制相关的内容,包括基本概念.复制原理.如何配置不同类型的复制(传统复制)等等.在此文章之后,还有几篇文章分别介绍GTID复制.半同步复制.实现MySQL的动静分离,以及MySQL 5.7.17引入的革命性功能:组复制(MGR). 本文是MySQL Replication的基础,但却非常重要.对于MySQL复制,如何搭建它不是重点(因为简单,网上资源非常多),如何维护它才是重点(网上资源不集中).以下几个知识点是掌握MySQL复制所必备的: 复制的原理 将master…
第12章 MySQL复制 本章将为读者讲述MySQL的复制技术,首先,介绍最基础的主从复制,它是其他所有复制技术的基础,接着再为读者讲述各种复制架构的搭建,最后,列举了一些常见的复制问题及处理方式.复制技术是大部分MySQL高可用技术的基础,熟练掌握各种复制架构有助于制定适合自己公司的高可用方案,第13章将讲述MySQL的迁移.升级.备份和恢复,这些技能同样极大地依赖于对复制架构的理解. 12.1 基础知识 12.1.1 原理及注意事项 MySQL支持单向.异步复制,复制过程中一个服务器充当主服…
mysql复制一列到另一列   UPDATE 表名 SET B列名=A列名 需求:把一个表某个字段内容复制到另一张表的某个字段. 实现sql语句1: 复制代码代码如下: UPDATE file_manager_folder f1LEFT OUTER JOIN file_manager_folder f2     ON f1.name = f2.name AND f2.parentId = 54SET f1.parentId = 54 WHERE f2.name IS NULL AND f1.id…
最近搭了个主从复制,中间出了点小问题,排查搞定,记录下来 1环境:虚拟机:OS:centos6.5Linux host2 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux 服务器IP192.168.18.66192.168.18.67 DB:mysql> select version();+-----------+| version() |+-----------+|…
replicate-do-db配置在MySQL从库的my.cnf文件中,可以指定只复制哪个库的数据.但是这个参数有个问题就是主库如果在其他的schema环境下操作,其binlog不会被从库应用,从而出现异常.可以简单的测试一下 --replicate-do-db参数引起的MySQL复制错误,步骤如下. 从库的my.cnf中有如下配置: replicate-do-db = maopaodb 首先在主库切换到test这个库并建立maopaodb下的一个表: mysql> use test;Datab…
本例中mysql的安装方式选用了二进制包安装方案.mysql复制用半同步复制方案 [1]安装mysql-5.6.31 要在所有的数据节点上都安装上mysql,安装方式大致相同,所以我这里就不重复写多次了,只以一台为例. 1.1 解压安装包到/usr/local/ -linux-glibc2.-x86_64.tar.gz -C /usr/local 1.2 为了创建linux系统的mysql用户 useradd mysql 1.3 创建连接文件 cd /usr/local/[root@mhamas…