MySQLでUUID(v4)をプライマリキーにしてはいけない理由データベースの設計でプライマリキーをどうするかは、最初に悩むところではないかと思います。特にコンシューマー向けのWebサービスやマルチテナントのB2Bサービスを開発するときなどは特に気をつかいますよね。 何も考えずにAuto increment(自動採番)型のプライマリキーを付けて、「/users/1」「/users/2」「/users/3」みたいなID付きのURLでアクセスさせてしまうと、次のような問題が生じることがあります。 URLに使われているIDの大きさや増加数から、システムの規模感や利用状況が分かってしまう。IDを機械的に変えて総当たり的に情報を取得できてしまう。また、分散したシステムでサブシステムごとに衝突しないIDを割り当てたいことがあるかもしれません。そんなときにUUIDをプライマリキーにしちゃえばいいんじゃね