通常,ALTER TABLE首先在主库上执行完毕后,才被复制并开始在从库上执行。有了这个特性,当ALTER TABLE在主库上开始执行时,它会立刻被复制并开始在从库上执行。这样可以完全消除从库的复制滞后,即可实现从库无延迟并行复制。
使用:
MariaDB[test]> set global binlog_alter_two_phase=1;
MariaDB[test]> set binlog_alter_two_phase=1;
MariaDB[test]> alter table sbtest1 add index IX_pad(pad);
ALTER TABLE执行完以后,你可以立即用mysqlbinlog工具去查看binlog,可以看到执行时,ALTER TABLE语句就已经记录在binlog文件里。