「開発者向けの MySQL 入門」という勉強会をしました

 今、自分が所属している会社では、いわゆるフルサイクルなアプリケーションエンジニアがほとんどで、SRE のような、システムを運用改善することを専門にするメンバーは居ません。一方でそれなりにプロダクトの数は多く、各種ミドルウェアの運用で困っているのを見かけることがあります。

 色々な人が似た問題に悩むのはもったいないので、「MySQL を運用したことがある人からすると、こういう考え方をする」という風な目線で勉強会を行いました。せっかくなので社内の情報を抜いたうえで公開します(同じようなことを色々な場所で言っていて、その都度作り直しているから……というのもあります)。

speakerdeck.com

 ちなみに DB のどこで悩むかはだいぶ業界ドメインに左右されると思っています(それはそう)。ゲーム業界なんかは、激しくスパイクするワークロードな上にミスったときの機会損失が激しいので、シャーディングをしたいし、出来るだけインフラコストを下げつつ運用したいというのが関心事でしょう。なんなら DBA が居ますよね。しかしうちはそうではなく、規模自体は小〜中規模程度なので、「片手間でなんとか運用するには」という助けになればと思って書きました。あと EXPLAIN の読み方なんかはいくらでも良い資料が見つかるので書いていません。

 間違っているところ等あればこっそり教えていただけるとありがたいです。