Update for last week (2019-12-16~ 2019-12-22)
MySQL Weeklyでは1週間ごとにMySQLのrelease-note, bug, official blog, organizationによるblog, 個人のblogをまとめ紹介しています。
更新は月曜 10時(AM)です。先週一週間のMySQL関連の更新を再確認するのにご活用ください。
また、このブログ記事はGitHub上で管理されていますMySQL-weekly repository。Issue, pull-request歓迎です。(完全に同期できているわけではありません)
Release note
(https://dev.mysql.com/doc/relnotes/mysql/8.0/en/)
- Nothing
Bugs
基本的にMySQL Server, 5.7以上のbug fixのみまとめます
Bug #97967 Empty resultset for subquery with union and text column with constant expression
- 8.0.18でサブクエリの結果セットに
text
のカラムがあり、かつunionでconstant expression
の結果がfalse(空)になる場合にクエリ全体の結果が空になるというバグ - 報告者によると8.0.16までは正しく動作する
- バグレポート内で開発者による回答 => 8.0.20で直る予定
Organization blogs
-
- Antijoin in MySQL 8
- 8.0.17で入った
antijoin
に関する解説 - antijoinによってTPC-Hの一部のクエリが8.0.16に比べて20%早く実行できるようになった
- (同ブログ内より引用)
NOT IN (subquery), NOT EXISTS (subquery), IN (subquery) IS NOT TRUE, or EXISTS (subquery) IS NOT TRUE
をサブクエリではなくantijoinとして実行する - 内部的には
First Match
とMaterialization
戦略の2つをコスト計算によって選択するので、テーブルの状況を見て早い戦略で実行できる
- 8.0.17で入った
- Antijoin in MySQL 8
-
- Nothing
-
- Updated XtraDB Cluster, XtraBackup, Percona Servers, New Features in Kubernetes Operator: Release Roundup 12/17/2019
- 12/2~12/17にあったxtrabackup関連ツールのまとめ
- シンプルなMySQL Serverをバックアップ対象とするならPercona XtraBackup 2.4.18, 8.0.19
- Give Love to Your SSDs – Reduce innodb_io_capacity_max!
innodb_io_capacity
,innodb_io_capacity_max
をDiskのwrite capacityに設定するので良いのか?という考察記事innodb_io_capacity(_max)
の説明と、これらを異常に高く設定した場合の問題点, diskの書き込みcapacityについて整理されている。- (感想)この記事を読むことでこれらの設定を高くすればよいわけではないのは分かるが適切な値がどれくらいかについてはより知識がいることがわかる。Adaptive flushingに関する記事が準備中らしいので期待
- Q & A on Webinar “Introduction to MySQL Query Tuning for DevOps”
- 12/5に行われた"Introduction to MySQL Query Tuning for DevOps"というwebinarのQ&A記事
- 特に最初の質問に対するindexの確認方法、統計情報, optimizer_traceの確認までは参考になる
- The Benefits of Amazon RDS for MySQL
- MySQL Encryption: Master Key Encryption in InnoDB
- InnoDBのTDEに使われるMaster Key, TableSpace Keyの関係と内部を説明
- Contention in MySQL InnoDB: Useful Info From the Semaphores Section
SHOW ENGINE INNODB STATUS
のSEMAPHORES
セクションの結果からversionやロックをとっているコードを見つけ実際に周辺のコードを読むまでの方法を説明
- Updated XtraDB Cluster, XtraBackup, Percona Servers, New Features in Kubernetes Operator: Release Roundup 12/17/2019
SmartStyle TECH BLOG (category MySQL)
-
- Nothing
Personal blogs
- preFOSDEM 2020 MySQL Days: the schedule
- lefred-san
- preFOSDEM Dayのスケジュールが公開されたよ、という紹介と概要
- MySQLのDROP DATABASEでWARNINGが表示されない事象
- sakaik-san
DROP DATABASE ...
でWARNINGが表示されない現象の調査報告- すでに数年前からbug reportが上がっているが、まだ直っていない(
まぁ重要度が低いと考えられているのか、4年たっても直す気配がない様子ですね。
)とのこと
-
- mita2-san
- タイトル通り, Historyに記録されない条件をソースから確認し、
MYSQL_HISTIGNORE
を試す
-
- mita2-san
- planeなCentOS7にMySQLをインストールする手順のコマンド例付き紹介
MySQL 2019 Advent Calendar
- MySQLのHELP構文ってやつ
- day 16
- lhfukamachi-san
- HELP構文による構文の調べ方の紹介
- MySQL Consistency 論考
- sysbench 1.0を使ってみよう
- day 18
- hiroi10-san
- sysbench 1.0の使い方や実際に実行されるクエリの解説
- オプション自体の説明から物理的な環境への影響まで考慮されている
- 僕の好きな TEMPORARY TABLE
- day 19
- kamedono-san
- TEMPORARY TABLEの作り方や使い方の紹介
- 【MySQL】エイリアスを使える句について
- day 20
- yukibe-san
GROUP BY
,ORDER BY
で別名(Alias)が使えるかどうかの整理
- 未upload
- day 21
- " _ " or " % " - Which is faster? (Like predicate in MySQL's sql)
- day 22
- next4us-san
- あいまい検索時における"_"と"%"の速度の差を検証
このブログ記事はGitHub上で管理されていますMySQL-weekly repository。Issue, pull-request歓迎です。(完全に同期できているわけではありません)