こんにちは。アーキテクト見習いエンジニアの小池です。 年の瀬ですね。弊社は今日が最終業務日です。 掃除がてら今年あったことを何か記事にしておこうと思います。 とあるシステムでデータベースのデッドロックが原因のエラー調査をすることになり、普段データベースをガッツリ触らない僕にとって、この調査をすること自体が非常に勉強になったので記事にします。 そのシステムのデータベースは Amazon Aurora MySQL (InnoDB) なのですが、これまで SQL Server を使ったシステムに関わることが多かったので両者の違いも感じられました。 テストテーブル 実際のテーブルはお見せできないので、再現用にミニマムなテストテーブルを用意します。 CREATE TABLE `test_table` ( `id` int(11) NOT NULL AUTO_INCREMENT, `user_id`