随笔分类 - MySQL Percona Toolkit
摘要:pt-osc和online ddl选择 1、如果表存在触发器,不能使用pt-osc。2、如果新增唯一索引,不建议使用pt-osc,以免数据丢失。3、修改索引、外键、列名时,优先选择使用ALGORITHM=INPLACE的online ddl4、数据量较小的表,优先选择online ddl5、数据量较
阅读全文
摘要:修改命令参数alter 1、不需要包含alter table关键字,可以包含多个修改操作,使用逗号分开,如"drop clolumn c1, add column c2 int" 2、不支持rename语句来对表进行重命名操作 3、不支持对索引进行重命名操作 4、如果删除外键,需要对外键名加下划线,
阅读全文
摘要:pt-osc执行日志 在对数据量为100000的表tb004做DROP COLUMN操作,pt-osc工具日志为: pt-osc工具对MySQL执行的SQL命令为: 常规检查和设置 创建触发器 第一次数据拷贝 在第一次数据拷贝前,先执行下面EXPLAIN语句获取表数据量: 如果表数据量较少,则选择通
阅读全文
摘要:工作流程 工具限制 ALTER 语句限制 数据一致性与加锁 唯一索引 数据拷贝 拷贝数据Chunk设置 触发器 主机性能影响 从库复制延迟 修改主键 通常情况下,我们会采用自增列来作为主键,优点是主键列长度小且业务无关,假设当前表使用业务主键,需要将业务主键修改为自增主键,并将业务主键修改为唯一索引
阅读全文
摘要:pt-table-checksum用来检测主从数据库上的数据一致性,其原理是通过在主库上运行一系列的MySQL函数计算每个表的散列值,并利用主从关系将相同的操作在从服务器上重放(基于statement格式的binlog),从而获取到主从服务器上的散列值然后比较散列值判定主从数据是否一致。 对于表中的
阅读全文