一 场景

数据库环境为一主一从(数据库同步方式用binlog,pos),使用mha来作为数据库高可用的一种方案,目前场景是所有读写操作均在vip进行,mysql主磁盘200G已经使用180G 清理binlog也只能清理一部分,需面临磁盘扩容,使用平台为腾讯云平台,本地ssd磁盘,咨询平台给的回馈是本地ssd不支持热扩,有两种方案
1.本地ssd转换云ssd 然后扩容,转换过程中理论不会出现数据丢失,但是转换需要停机操作
2.买一个新的ssd做数据copy

二 实际操作

1.主从切换,并且准备好磁盘

masterha_master_switch --conf=/etc/mha/mha.cnf --master_state=alive --new_master_host=masterIP  --orig_master_is_new_slave
#检查同步状态
#在slave执行
show master status\G
#在master执行
show slave status\G

如果mha切换失败备用方案自己手动切换
如果mha切换失败 那么就手动切换

#在slave服务器 RESET MASTER;STOP SLAVE;RESET SLAVE; show master status;
show slave status\G;#可以看到binlog 以及pos 并记录#在master服务器RESET MASTER;STOP SLAVE;RESET SLAVE;
CHANGE MASTER TO MASTER_HOST='原先的slave服务器',
MASTER_PORT=3306,
MASTER_USER='repl',
MASTER_PASSWORD='password',
MASTER_LOG_FILE='mysql-bin.000001',
MASTER_LOG_POS=435;

确认vip是否漂移成功 失败的话手动切换

#在从slave执行ip addr add vip dev eth1
#在主master执行
ip addr del vip dev eth1

2.停掉master 数据copy

因为之前是nohup启动的所以
在之前的master服务器

mysqladmin shutdowncp -r /data/*    /mysql-data
#卸载的时候需要注意不能再磁盘目录中,会导致占用然后umount失败
umount /olddata
umount /newdata
mount /newdisk   /olddata
chown -R mysql:mysql /olddata

3.启动master确认主从状态

#启动master
mysqld_safe --defaults-file=/etc/my3306.cnf --datadir=/data/mysql3306/mysql3306 --user=mysql &

4.主从切换,并且确认主从同步状态

masterha_master_switch --conf=/etc/mha/mha.cnf --master_state=alive --new_master_host=old_master_ip  --orig_master_is_new_slave
#在master服务器执行
show slave status\G
#确认主从同步状态
#检查同步状态
#在slave执行
show master status\G
#在master执行
show slave status\G
#检查vip是否漂移成功若失败手动漂移

5.与研发确认数据库扩容操作完成,测试主从同步以及数据库可用性

Mysql数据库磁盘扩容相关推荐

  1. 6 种 MySQL 数据库平滑扩容方案剖析

    更多内容关注微信公众号:fullstack888 1. 扩容方案剖析 1.1 扩容问题 在项目初期,我们部署了三个数据库 A.B.C,此时数据库的规模可以满足我们的业务需求.为了将数据做到平均分配,我 ...

  2. MySQL 数据库平滑扩容的6 种方案剖析

    1. 扩容方案剖析 1.1 扩容问题 在项目初期,我们部署了三个数据库 A.B.C,此时数据库的规模可以满足我们的业务需求.为了将数据做到平均分配,我们在 Service 服务层使用 uid%3 进行 ...

  3. Mysql数据库平滑扩容解决高并发和大数据量问题

    目录 1 停机方案 2 停写方案 3 平滑扩容之双写方案(中小型数据) 4 平滑扩容之2N方案大数据量问题解决 4.1 扩容问题 4.2 解决方案 4.3 双主架构思想 4.4 环境部署 4.4.1 ...

  4. mysql+磁盘i+o+优化_浅析MySQL数据库磁盘I/O调整优化

    [IT168 技术]目前web的应用大多都以I/O密集型为主,而存储技术的发展远没有计算机中其他系统发展迅速,尽管也有不少高端存储设备,但是价格的昂贵,不是一般大众能享受的起的.而基于现状更多是我们使 ...

  5. mysql+磁盘i+o+优化_浅析MySQL数据库磁盘I/O调整优化 | 学步园

    [IT168 技术]目前web的应用大多都以I/O密集型为主,而存储技术的发展远没有计算机中其他系统发展迅速,尽管也有不少高端存储设备,但是价格的昂贵,不是一般大众能享受的起的.而基于现状更多是我们使 ...

  6. mysql SQL命令查看Mysql数据库磁盘使用量

    – 1. 查询所有数据总的磁盘使用量: select concat(round(sum(data_length/1024/1024),2),'MB') as data from information ...

  7. MySQL 数据库救火:磁盘爆满了,怎么办?

    摘要:当磁盘空间爆满后,MySQL会发生什么事呢?又应该怎么应对? 本文分享自华为云社区<[MySQL 数据库救火]- 磁盘突然爆满的处理方式>,原文作者:技术火炬手 . 大多数用户在对于 ...

  8. mysql 磁盘限额_为Linux MySQL数据库设置磁盘限额

    因为MySQL数据库本身没有磁盘限额的功能,我们可以限制Linux自带的quota工具为mysql进行磁盘限额. 1.首先需要为/home自动挂载一个分区,并且设置为quota磁盘格式.我们以用户fo ...

  9. mysql云数据库 磁盘利用率_云数据库MySQL参数的那些事儿

    MySQL数据库参数是数据库系统运行的关键配置信息,设置不合适的参数值可能会影响业务.本文列举了一些重要参数说明,更多参数详细说明,请参见MySQL官网. 修改敏感参数 若干参数相关说明如下:&quo ...

最新文章

  1. Array.slice 8 种不同用法
  2. linux安装jdk8_Skywalking系列博客1-安装单机版 Skywalking
  3. SpringMVC简单项目配置
  4. ES6 学习笔记(基础)
  5. 在Linux上挂载Windows共享文件夹,如何开机自动挂载(mount)
  6. 在xml文件中使用typeAliases标签报错The content of element type “configuration“ must match “(properties?,setting
  7. java 学习书籍 转载
  8. CentOS 6.9之LVM创建,扩容
  9. 20.看板方法---问题管理和升级策略
  10. linux怎么启动打印服务,Linux打印服务管理
  11. FPGA数字信号处理(十七)多级CIC滤波器Verilog设计
  12. 普歌-nuxt.js基础
  13. CSS-div垂直居中方法总结
  14. mysql数据库之基本函数,列属性,数据库管理
  15. 详细分析Java8中default关键字
  16. UVA-12304 测试圆相关模板
  17. Spark Structured Steaming实战
  18. 阿里巴巴、Amazon、Windows、Android、Google、Internet、iPhone、汽车底盘、以及信用卡都属于平台经济--产品平台---供应链平台---产业平台--双边市场平台
  19. C#对图片进行马赛克处理,可控制模糊程度
  20. UI设计界面设计培训班

热门文章

  1. zephir-安装和初体验
  2. opencv产生随机数
  3. 外卖O2O公司为何能得到天价估值
  4. Ceph用户:中国用户统计表(2018年度)
  5. 绝妙!不用外部电路检测芯片工作电压!
  6. Windows系统如何部署Rabbit和启动Rabbit服务
  7. 从零开始——Dev-C++调试方法
  8. n核CPU为什么计算速度达不到单核n倍
  9. 深读源码-java同步系列简介
  10. 论文排版图片一栏设置与文献引用的超链接设置-论文投稿经验总结-第3期