前回の第24回 GTIDを使用したレプリケーション構成を作成する[1]に続いてGTIDについて紹介します。今回は、レプリケーションがエラーで停止してしまった際の対処方法と、MySQL5.7から可能となったオンラインでのGTIDの有効化について説明します。 特定のトランザクションをスキップする 従来のレプリケーションでは、Duplicate entryなどのエラーにてレプリケーションが停止してしまった場合に、SET GLOBAL sql_slave_skip_counter = Nを使用してトランザクションまたはSQLステートメントをスキップすることで、レプリケーションの継続ができました。しかし、GTIDを使用したレプリケーションではこの構文が使用できません。 GTIDを使用したレプリケーションでの対処方法として、以下の2点があります。 空のトランザクションを使用した方法 gtid_purg