实践案例丨Pt-osc工具连接rds for mysql 数据库失败
本文分享自华为云社区《Pt-osc工具连接rds for mysql 数据库失败》,原文作者:云技术搬运工 。
【现象】
主机可以telent 通rds 端口,并且使用mysql-client 连接正常;
如下图所示:使用pt-osc工具连接时,一直没有响应,一直卡在哪里
等了4-5分钟左右后,会有响应,如下图所示:提示不能连接到x.x.x.x,而这个ip地址查到是备节点的ip。
【排查】
在rds侧查看任务流如下图:发现pt-osc先连进来执行了一下show full processlist,然后卡了4-5分钟左右。结合上面截图中卡了4-5分钟后客户端的返回看,pt-osc工具先show full processlist得到备库的ip,然后去连接备库了,但是备库由于作为高可用性而做的备份,不直接提供外部服务,所以是连接不上的。
【解决】
Pt-osc有一个参数:-recursion-method
【type:array; 默认值:processlist,host
用于判断是否存在从库的方式,可以的方式有:
processlist:show processlist;
hosts:show slave hosts
dsn=DSN:DSNs from a table
none:不查找从库】
pt-osc连接时 加上--recursion-method=none 意为不查找从库,就正常了。具体命令为 #pt-online-schema-change --user=root --password=xxxxx --host=xx.xx.xx.xx P=3306,D=xx,t=xx --charset=utf8 --alter="ENFINE=InnoDB" --nocheck-replication-files --alter-foreign-keys-method=auto --recursion-method=none --execute。
【总结】
Pt-osc工具连接数据库时会先通过sql得到备库的ip,然后连接备库。但是我们rds的备库是无法连接的,因此会卡住。而连接单机类型的rds for mysql 则正常。
相关文章
- 【MySQL】可重复读模式下 unique key失效案例
- linux - mysql - 卸载:RPM包安装方式的MySQL卸载
- Mybatis+mysql动态分页查询数据案例——工具类(MybatisUtil.java)
- Mybatis+mysql动态分页查询数据案例——Mybatis的配置文件(mybatis-config.xml)
- Mybatis+mysql动态分页查询数据案例——配置映射文件(HouseDaoMapper.xml)
- Mybatis+mysql动态分页查询数据案例——房屋信息的实现类(HouseDaoMybatisImpl)
- Mybatis+mysql动态分页查询数据案例——房屋信息的接口(IHouseDao)
- Mybatis+MySQL动态分页查询数据经典案例(含代码以及测试)
- bash: mysql: command not found
- mysql 查看正在运行的进程
- mysql去重案例,group_concat函数的用法
- 网站出现数据库连接失败,mysql 2003错误(10061) 的解决方法
- Mysql 如果有多个可选条件怎么加索引_MySQL|mysql-索引
- Ansible Playbook企业案例:利用 playbook 安装 nginx、安装和卸载 httpd、安装mysql
- django3.2.8配置使用mysql
- MySQL表级锁和行级锁
- 【面试】MySQL面试题
- 〖Python 数据库开发实战 - MySQL篇㉞〗- 综合案例 - 新闻管理系统数据库设计的基本属性
- 〖Python 数据库开发实战 - MySQL篇㉟〗- 综合案例 - 数据库ER图设计、新闻类型表与用户角色表的创建
- 〖Python 数据库开发实战 - MySQL篇㊱〗- 综合案例 - 关于数据表 password 字段的数据加密
- 〖Python 数据库开发实战 - MySQL篇㊲〗- 综合案例 - 新闻管理系统 - t_user 用户表与 t_news 新闻表的创建
- 〖Python 数据库开发实战 - Python与MySQL交互篇⑦〗- MySQL Connector模块的综合案例 2
- mysql中游标的使用案例详解(学习笔记)(转)
- Mysql 数据库 表中列的操作
- MySQL 5.6.35 索引优化导致的死锁案例解析
- MySql一个生产死锁案例分析
- Mysql-Proxy代理配置
- MySQL死锁简单案例演示
- MySQL-表的基本操作