| 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的更多相关文章

  1. 【转】MySQL的Replace into 与Insert into on duplicate key update真正的不同之处

    原文链接:http://www.jb51.net/article/47090.htm   今天听同事介绍oracle到mysql的数据migration,他用了Insert into ..... on ...

  2. 【MySQL】ON DUPLICATE KEY UPDATE

    之前没用过这个操作,甚至没见过--最近接触到,而且还挺有用. 作用:若 KEY 不重复,则插入记录:否则更新记录. 单条操作: INSERT INTO table(a, b, c) VALUES (1 ...

  3. ON DUPLICATE KEY UPDATE重复插入时更新

    mysql当插入重复时更新的方法: 第一种方法: 示例一:插入多条记录 假设有一个主键为 client_id 的 clients 表,可以使用下面的语句: INSERT INTO clients (c ...

  4. ON DUPLICATE KEY UPDATE

    如果在INSERT语句末尾指定了ON DUPLICATE KEY UPDATE,并且插入行后会导致在一个UNIQUE索引或PRIMARY KEY中出现重复值,则在出现重复值的行执行UPDATE: 如果 ...

  5. 深入mysql "on duplicate key update" 语法的分析

    如果在INSERT语句末尾指定了on duplicate key update,并且插入行后会导致在一个UNIQUE索引或PRIMARY KEY中出现重复值,则在出现重复值的行执行UPDATE:如果不 ...

  6. [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:    ...

  7. INSERT INTO .. ON DUPLICATE KEY更新多行记录

    现在问题来了,如果INSERT多行记录, ON DUPLICATE KEY UPDATE后面字段的值怎么指定?要知道一条INSERT语句中只能有一个ON DUPLICATE KEY UPDATE,到底 ...

  8. 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 ...

  9. MySql避免重复插入记录方法(ignore,Replace,ON DUPLICATE KEY UPDATE)

    ON DUPLICATE KEY UPDATE  博客 http://blog.csdn.net/jbboy/article/details/46828917

  10. mysql:on duplicate key update与replace into

    在往表里面插入数据的时候,经常需要:a.先判断数据是否存在于库里面:b.不存在则插入:c.存在则更新 一.replace into 前提:数据库里面必须有主键或唯一索引,不然replace into ...

随机推荐

  1. python基础学习Day17 面向对象的三大特性之继承、类与对象名称空间小试

    一.课前回顾 类:具有相同属性和方法的一类事物 实例化:类名() 过程: 开辟了一块内存空间 执行init方法 封装属性 自动的把self返回给实例化对象的地方 对象:实例 一个实实在在存在的实体 组 ...

  2. SPSS-判别分析

    判别分析 判别分析是一种有效的对个案进行分类分析的方法.和聚类分析不同的是,判别分析时组别的特征已知. 定义:判别分析先根据已知类别的事物的性质,利用某种技术建立函数式,然后对未知类别的新事物进 行判 ...

  3. input 文本框,对中文长度校验

    在项目中,经常会遇到,对文本框进行校验. eg.  要求姓名长度为20,中文为10,只能输入中英文. <input   maxlength="20" type="t ...

  4. 启动 idea 编译报错 kotlin

    怀疑是插件问题. 重新删除了.  C:\Users\user  里面inteliJIdea2018.3 缓存 ,解决

  5. KADEMLIA算法学习

    在上一篇文章中<P2P技术是什么>,我们介绍了P2P技术的特点以及发展历史.在本篇文章中,我们来介绍某一个具体的算法. 如今很多P2P网络的实现都采用DHT的方式实现查找,其中Kademl ...

  6. cakephp 如何在一个模型里调用另一个模型

    $admin_users = ClassRegistry::init('AdminUsers'); $admin_name = $admin_users->find('list',array( ...

  7. C专家编程

    [C专家编程] 1.如果写了这样一条语句: if(3=i).那么编程器会发出“attempted assignment to literal(试图向常数赋值)”的错误信息. 所以将常量放置在==前央, ...

  8. C#单例和Unity单例

    单例是一种设计模式 单例:不管在项目中的任何模块,当需要使用某个对象的时候,获取到的始终是同一个对象 在C#中 public class InstanceDemo{ private static In ...

  9. Linq to sql 之 ExecuteQuery 错误:指定的转换无效

    问题:通过dbContext.ExecuteQuery 得到数据并赋值给一个集合. 代码: public IEnumerable<LeaveCodeSum> GetLeavTotal(st ...

  10. SQL%ROWCOUNT作用

    SQL%ROWCOUNT是一个游标属性,而SQL中的DML操作实际上是一种隐式的游标操作,在做insert,update,delete,merge以及select into操作时,Oracle会打开一 ...