06. pt-duplicate-key-checker
| t01 | CREATE TABLE `t01` (
`pkid` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(50) NOT NULL,
`code` int(11) NOT NULL,
`ctime` datetime DEFAULT CURRENT_TIMESTAMP,
`utime` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`pkid`),
KEY `idx_name` (`name`),
KEY `idx_code` (`code`),
KEY `idx_name_code` (`name`,`code`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 |
vim duplicate_key.cnf
host=192.168.100.101
port=3306
user=admin
password=admin
databases=db01
tables=t01,pt_deadlocks
clustered
all-structs
pt-duplicate-key-checker --config duplicate_key.cnf
# ########################################################################
# db01.t01
# ########################################################################
# idx_name is a left-prefix of idx_name_code
# Key definitions:
# KEY `idx_name` (`name`)
# KEY `idx_name_code` (`name`,`code`),
# Column types:
# `name` varchar(50) not null
# `code` int(11) not null
# To remove this duplicate index, execute:
ALTER TABLE `db01`.`t01` DROP INDEX `idx_name`;
# ########################################################################
# Summary of indexes
# ########################################################################
# Size Duplicate Indexes 1010
# Total Duplicate Indexes 1
# Total Indexes 5
pt-duplicate-key-checker h=192.168.100.101,P=3306,u=admin,p=admin -d db01 -t t01,pt_deadlocks
# ########################################################################
# db01.t01
# ########################################################################
# idx_name is a left-prefix of idx_name_code
# Key definitions:
# KEY `idx_name` (`name`),
# KEY `idx_name_code` (`name`,`code`)
# Column types:
# `name` varchar(50) not null
# `code` int(11) not null
# To remove this duplicate index, execute:
ALTER TABLE `db01`.`t01` DROP INDEX `idx_name`;
# ########################################################################
# Summary of indexes
# ########################################################################
# Size Duplicate Indexes 1010
# Total Duplicate Indexes 1
# Total Indexes 5
pt-duplicate-key-checker h=192.168.100.101,P=3306,u=admin,p=admin -d db01
# ########################################################################
# db01.t01
# ########################################################################
# idx_name is a left-prefix of idx_name_code
# Key definitions:
# KEY `idx_name` (`name`),
# KEY `idx_name_code` (`name`,`code`)
# Column types:
# `name` varchar(50) not null
# `code` int(11) not null
# To remove this duplicate index, execute:
ALTER TABLE `db01`.`t01` DROP INDEX `idx_name`;
# ########################################################################
# Summary of indexes
# ########################################################################
# Size Duplicate Indexes 1010
# Total Duplicate Indexes 1
# Total Indexes 5
[root@server01 ~]# mysql -e 'alter table db01.t01 drop index idx_name'
[root@server01 ~]# pt-duplicate-key-checker h=192.168.100.101,P=3306,u=admin,p=admin -d db01 -t t01,pt_deadlocks
# ########################################################################
# Summary of indexes
# ########################################################################
# Total Indexes 4
06. pt-duplicate-key-checker的更多相关文章
- 【转】MySQL的Replace into 与Insert into on duplicate key update真正的不同之处
原文链接:http://www.jb51.net/article/47090.htm 今天听同事介绍oracle到mysql的数据migration,他用了Insert into ..... on ...
- 【MySQL】ON DUPLICATE KEY UPDATE
之前没用过这个操作,甚至没见过--最近接触到,而且还挺有用. 作用:若 KEY 不重复,则插入记录:否则更新记录. 单条操作: INSERT INTO table(a, b, c) VALUES (1 ...
- ON DUPLICATE KEY UPDATE重复插入时更新
mysql当插入重复时更新的方法: 第一种方法: 示例一:插入多条记录 假设有一个主键为 client_id 的 clients 表,可以使用下面的语句: INSERT INTO clients (c ...
- ON DUPLICATE KEY UPDATE
如果在INSERT语句末尾指定了ON DUPLICATE KEY UPDATE,并且插入行后会导致在一个UNIQUE索引或PRIMARY KEY中出现重复值,则在出现重复值的行执行UPDATE: 如果 ...
- 深入mysql "on duplicate key update" 语法的分析
如果在INSERT语句末尾指定了on duplicate key update,并且插入行后会导致在一个UNIQUE索引或PRIMARY KEY中出现重复值,则在出现重复值的行执行UPDATE:如果不 ...
- [BTS]The join order has been enforced because a local join hint is used.;Duplicate key was ignored.".
在一个客户的BizTalk Server 2013 R2环境中会报如下的ERROR,查找相关资料后,先试试停掉所有Trace. Log Name: ApplicationSource: ...
- INSERT INTO .. ON DUPLICATE KEY更新多行记录
现在问题来了,如果INSERT多行记录, ON DUPLICATE KEY UPDATE后面字段的值怎么指定?要知道一条INSERT语句中只能有一个ON DUPLICATE KEY UPDATE,到底 ...
- insert into hi_user_score set hello_id=74372073,a=10001 on duplicate key update hello_id=74372073, a=10001
insert into hi_user_score set hello_id=74372073,a=10001 on duplicate key update hello_id=74372073, a ...
- MySql避免重复插入记录方法(ignore,Replace,ON DUPLICATE KEY UPDATE)
ON DUPLICATE KEY UPDATE 博客 http://blog.csdn.net/jbboy/article/details/46828917
- mysql:on duplicate key update与replace into
在往表里面插入数据的时候,经常需要:a.先判断数据是否存在于库里面:b.不存在则插入:c.存在则更新 一.replace into 前提:数据库里面必须有主键或唯一索引,不然replace into ...
随机推荐
- python基础学习Day17 面向对象的三大特性之继承、类与对象名称空间小试
一.课前回顾 类:具有相同属性和方法的一类事物 实例化:类名() 过程: 开辟了一块内存空间 执行init方法 封装属性 自动的把self返回给实例化对象的地方 对象:实例 一个实实在在存在的实体 组 ...
- SPSS-判别分析
判别分析 判别分析是一种有效的对个案进行分类分析的方法.和聚类分析不同的是,判别分析时组别的特征已知. 定义:判别分析先根据已知类别的事物的性质,利用某种技术建立函数式,然后对未知类别的新事物进 行判 ...
- input 文本框,对中文长度校验
在项目中,经常会遇到,对文本框进行校验. eg. 要求姓名长度为20,中文为10,只能输入中英文. <input maxlength="20" type="t ...
- 启动 idea 编译报错 kotlin
怀疑是插件问题. 重新删除了. C:\Users\user 里面inteliJIdea2018.3 缓存 ,解决
- KADEMLIA算法学习
在上一篇文章中<P2P技术是什么>,我们介绍了P2P技术的特点以及发展历史.在本篇文章中,我们来介绍某一个具体的算法. 如今很多P2P网络的实现都采用DHT的方式实现查找,其中Kademl ...
- cakephp 如何在一个模型里调用另一个模型
$admin_users = ClassRegistry::init('AdminUsers'); $admin_name = $admin_users->find('list',array( ...
- C专家编程
[C专家编程] 1.如果写了这样一条语句: if(3=i).那么编程器会发出“attempted assignment to literal(试图向常数赋值)”的错误信息. 所以将常量放置在==前央, ...
- C#单例和Unity单例
单例是一种设计模式 单例:不管在项目中的任何模块,当需要使用某个对象的时候,获取到的始终是同一个对象 在C#中 public class InstanceDemo{ private static In ...
- Linq to sql 之 ExecuteQuery 错误:指定的转换无效
问题:通过dbContext.ExecuteQuery 得到数据并赋值给一个集合. 代码: public IEnumerable<LeaveCodeSum> GetLeavTotal(st ...
- SQL%ROWCOUNT作用
SQL%ROWCOUNT是一个游标属性,而SQL中的DML操作实际上是一种隐式的游标操作,在做insert,update,delete,merge以及select into操作时,Oracle会打开一 ...