MySQL の自動インクリメント カラムが 10 ずつジャンプするのはなぜですか?
MySQL では、オートインクリメント カラムとは、値が指定された値だけ自動的にインクリメントされるカラムです。新しい挿入ごとの間隔。通常、この間隔は 1 です。ただし、特定の状況下では、自動インクリメント値が 9 ずつ増分をスキップし、結果として 10 ずつジャンプすることに気づく場合があります。
理由:
この動作は、マネージド MySQL サービスである ClearDB によって使用される構成の結果です。複数のマスター データベースが重複した自動インクリメント値を生成しないようにするために、ClearDB は循環レプリケーションを使用し、特定のキーをスキップするように MySQL を構成します。具体的には、キーの競合の可能性を避けるために、自動インクリメント値が 10 ずつ増分されます。
問題ですか?
自動インクリメント値が 10 ずつ跳ね上がるのは予期せぬことではありますが、これは問題です。一般的には問題とは考えられていません。ほとんどのアプリケーションは、正確な自動インクリメント値自体に大きく依存するのではなく、値の一意で増加する性質に依存します。インクリメントをスキップしても、自動生成キーの一意性や整合性には影響しません。
追加情報:
この動作は ClearDB およびその他の MySQL に固有であることに注意することが重要です。環境によっては表示されない場合があります。さらに、深刻な問題が発生する可能性があるため、この動作を修正するために autoincrement_increment 値を変更しないでください。 ClearDB の構成は競合を防ぐように特別に設計されており、変更を加えるとシステムの信頼性が損なわれる可能性があります。
以上がMySQL の自動インクリメント列が数値をスキップして 10 ずつジャンプするのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。