MySQL8系を扱うことになったので、調査した内容をメモしておく。
MySQLはバージョンアップする度に、余計な設定変更されたりするので注意して利用しなければいけない奴だと思っている。もちろんパフォーマンスが改善されたり、アップデートされた機能もあるので、適切に扱ってあげれば大丈夫な子なんです。
漢のコンピュータ道
http://nippondanji.blogspot.com/2018/05/mysql-80.html
さようなら、クエリキャッシュ
MySQLに特徴的な機能として、多くの方から愛用されたクエリキャッシュは、時代と共にその役割を終え、ついにMySQL 8.0から削除された。クエリキャッシュのような結果をキャッシュする機能を使いたい場合は、アプリケーション側で結果をキャッシュするなど工夫して欲しい。MySQL側でやろうとするとオーバーヘッドが大きくなってしまうからだ。
クエリキャッシュファンには申し訳ないが、MySQL 8.0ではもう使うことはできないので諦めて欲しい。
実に辛い。
MySQLの容量とか圧縮まわり
https://www.slideshare.net/satoshimitani71/mysql-171517476
information_schema_stats_expiry
テーブル統計をキャッシュを保持しておく期間
デフォルトは1⽇(86400秒)
キャッシュがexpireしたら、InnoDBに 「最新の統計情報」を取りに⾏く
information_schema_stats_expiry
どういう効果を意図したパラメータなんでしょう・・・
⾃分は 0 にします
是非、意図があるなら自分にも教えてほしい。
FYI https://yoku0825.blogspot.com/2019/05/mysql-80show-table-status.html
MySQL 8.0は何が優れていて、どこに注意すべきか。データベース専門家が新機能を徹底解説
https://employment.en-japan.com/engineerhub/entry/2018/09/18/110000
log_bin変数のデフォルト値が「0(ログを出力しない)」から「1(ログを出力する)」に変わりました。
ほー。
[MySQL8.0] デフォルトUTF8MB4、そして新しい日本語用照合順序
http://scsk-db.jp/mysql/topics/2018/05/23-090000.html
MySQL 8.0では、デフォルトの文字コードがUTF8MB4になりました。
従来はlatin1でしたので、近年の文字コード使用傾向に合わせた変更であるといえます。
文字コードと合わせてチェックすべきなのが、照合順序です。
MySQL 8.0では、日本語用の照合順序が新たに作成されています。
utf8mb4_ja_0900_as_csとutf8mb4_ja_0900_as_cs_ksです。
あと、このへんもですね。