mysql 备库没主键

mysql主键的缺少导致备库hang
http://hidba.org/?p=688

slave_rows_search_algorithms参数的说明,流程和简单测试结果

[MySQL 5.6] 5.6新参数slave_rows_search_algorithms
http://mysqllover.com/?p=724

这里也介绍了一下
MySQL内核月报 2014.11
http://mysql.taobao.org/index.php?title=MySQL%E5%86%85%E6%A0%B8%E6%9C%88%E6%8A%A5_2014.11&oldid=1004

加了slave_rows_search_algorithms HASH_SCAN 重启备库还是很慢,只加,HASH_SCAN也不快,从21点到1:30 跑了大约60多万条,可以通过 SHOW INDEX FROM pay_batch_detail_h; 来看

slave_rows_search_algorithms 测试记录
http://blog.sina.com.cn/s/blog_4673e6030102wztn.html
这篇文章记录了测试结果,并且提交了mysql的bug
从测试结果看,还是要用主键,即使加了参数依然很慢
https://bugs.mysql.com/bug.php?id=84887
https://bugs.launchpad.net/percona-server/+bug/1666923
mysql打的bug中有人说是统计信息的问题需要analyze table mysql 指向https://bugs.mysql.com/bug.php?id=84287&thanks=1&notify=128
,但题主不认可

官方参数说明
https://dev.mysql.com/doc/refman/5.6/en/replication-options-slave.html#sysvar_slave_rows_search_algorithms

####查看当前卡住的事务具体是什么操作的方法
show slave status\G;
查看当前待执行的重放日志和日志点
Relay_Log_File: yanzhengdb02-relay-bin.000012
Relay_Log_Pos: 958

通过mysqlbinlog查看卡住的事务
cd /mysql/upsqldata
mysqlbinlog Relay_Log_File文件名 -v -v --start-position=Relay_Log_Pos数字 -f --base64-output=DECODE-ROWS |more

用mysqlbinlog查看row格式的事件
http://5iwww.blog.51cto.com/856039/588168
mysql-mysqlbinlog使用详解
http://blog.sina.com.cn/s/blog_4a80a5730101onh4.html
MySQL小误区:关于set global sql_slave_skip_counter=N 命令的一些点
http://dinglin.iteye.com/blog/1236330

####gtid模式下跳过当前事务的方法
https://www.52os.net/articles/injecting-empty-transactions-repair-mysql-5-6-gtid-replication.html

show slave status \G;
Executed_Gtid_Set: 94b06c13-1f09-11e5-97ea-000c29c8caec:1-10

STOP SLAVE;
show slave status \G;
确认Executed_Gtid_Set没有变化
设置事务号+1
SET GTID_NEXT="94b06c13-1f09-11e5-97ea-000c29c8caec:11";
BEGIN; COMMIT;
SET GTID_NEXT="AUTOMATIC";
START SLAVE;

重新导入主库数据添加备库,然后导入备机,添加主键,然后重建主从同步,备机删除就飞快了

© 2017, 新之助meow. 原创文章转载请注明: 转载自http://www.xinmeow.com

0.00 avg. rating (0% score) - 0 votes
点赞