GA

2020/07/01

MySQL徹底入門 第4版の執筆に参加しました

TL;DR


掲題の通り、MySQL徹底入門の執筆に参加させていただきました。

第3版 を「読んで勉強していた」のが、第4版を書く側として声をかけていただいて、人生何があるかわからないものだなあ。

飽くまで「入門」なので、「実践ハイパフォーマンスMySQL」のような玄人向け成分はほぼありません。たぶん。

俺の担当は 6章(運用), 8章(レプリケーション), 9章(バックアップとリストア), 10章(プログラミングのうちPerl), 14章(逆引きMySQL辞典の一部) となっています。

6章(運用)

  • いわゆる MySQLを運用しましょう 的な内容ではない
  • 「運用するにはこれくらいの基礎知識は必要だよね?」な内容が詰まっています
    • SET GLOBAL で即時有効にならないパラメーターの話とか
    • my.cnfの読み込まれる順番の話とか
    • MySQLが「インデックスをどう使うからWHEREやORDER BY .. LIMITが速くなるのか」とか
      • 一部の方にご好評いただいている「トランプを使ったたとえ」が初めて文書化されています :)
    • レプリケーションを使ったローリングアップグレードの仕組みの話とか

8章(レプリケーション)

  • (非同期)レプリケーションとグループレプリケーションの「仕組み」に言及しています
    • 非同期レプリケーションではBinlog Dumpスレッド、I/Oスレッド、SQLスレッド、じゃあグループレプリケーションは? :)
      • というくらいのレベル感です
  • レプリケーション関連のオプションのオススメ設定や、設定時に考えることが割と列挙されています
  • なんとレプリケーションの構築手順が 全てMySQL Shellから構築する方法しか紹介されていません よってgtid_mode=ON も前提です。
    • 8.0のこの時代に「入門」する人は、もうMySQL Shellからの方法だけおぼえればいいんじゃないかな…

9章(バックアップとリストア)

  • 目新しいところは Cloneステートメントを使ったサンプルがあるところと、 mysqlbinlog --read-from-remote-server --stop-never --raw を使ったサンプルがあるところでしょうか
  • GTIDを前提に解説しているのでGTIDに不慣れな人には良い鴨

10章(プログラミング - Perl)

  • たぶん中括弧と代入の使い方がキモチワルイと思うんですが、これは(CにできてPerlにできない書き方を除いて)「 昔の MySQLのコーディング規約」に毒された俺の末路です。

14章(逆引きMySQL辞典)

  • 本編(?)とは違ったテンションでお送りする一問一答…とは限らないQ&Aっぽいコーナー
  • ここ書いてて本当に楽しかった章で、読み返しの時に「俺が書いたような気がしたものが別は他の人が書いた部分」「この人が書いただろうなと思ったものを書いたのは実は俺」みたいな錯覚がありました

参加できたことを嬉しく思いますし、全体通してもなかなか面白く読み応えのある本になっていますので、是非お手に取っていただければと。

俺が一番読んでて面白かったのは第11章の「文字コードと日本語環境」です :D

0 件のコメント :

コメントを投稿