您的位置 首页 > 数码极客

如何删掉触发器、如何添加触发器动画…

需求描述

给一个几千万数量级的大表添加字段

实施过程

由于表中数据量太大,不能直接添加,我们使用 percona 工具 pt-online-change-schema 来添加字段。

cd ./pt-online-schema-change --alter "add column enname varchar(32) not null default ''" --execute D=mydb,t=test,u=root,p=123456

问题描述

加字段的过程由于连接中断,添加字段未能成功,我们重新执行添加字段命令,但是报错如下:

No slaves found. See --recursion-method if host ...... has slaves. Not checking slave lag because no slaves were found and --check-slave-lag was not specified. The table `test.`tab1` has triggers. This tool needs to create its own triggers, so the table cannot already have triggers.

这个报错提示触发器已经存在

问题分析

我们知道使用 pt-online-change-schema 来添加字段会创建三个触发器(insert、update、delete),所以我们需要删除这三个触发器后再执行添加字段命令

解决方案

1.查询触发器

select * from in;

2.删除触发器

找到对应的TRIGGER_SCHEMA和TRIGGER_NAME,然后删除

mysql> drop trigger ; mysql> drop trigger ; mysql> drop trigger ;

3.重新执行添加字段的命令即可

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“如何删掉触发器,如何添加触发器动画,ppt如何删掉触发器,如何删除触发器,如何设置触发器”边界阅读