Update for last week (2020-06-01~ 2020-06-07)
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のみまとめます
serverity >= S5(Performance)
でupdatedでdesc sort、結果の今週分Status == Closed
でID#
でdesc sort、結果の今週分を見るNothing
Organization blogs
-
- Nothing
-
- Nothing
-
- Percona XtraBackup For All Versions of MySQL, Percona Server for MongoDB Updates, DBaaS CLI Tool 0.2.0: Release Roundup June 8 2020
- Percona XtraBackupの更新
- MySQL8.0.20に対応したXtrabackup 8.0.12がreleased
- Q & A on Webinar “How Safe is Asynchronous Master-Master Setup in MySQL?”
- 以前のwebinarのQ&Aをまとめた回答集ページ
- Improving MySQL Password Security with Validation Plugin
- パスワードの強度をより詳細に設定するための
VALIDATION PLUGIN
についての紹介
- パスワードの強度をより詳細に設定するための
- SQL Query Formatting Tools Used At Percona
- Setting Up a MySQL and Orchestrator Docker Environment
- Dockerで
orchestrator
によるHA厚生環境を構築するサンプルの紹介
- Dockerで
- Percona XtraBackup For All Versions of MySQL, Percona Server for MongoDB Updates, DBaaS CLI Tool 0.2.0: Release Roundup June 8 2020
-
- 第123回 ロッキングリードのNOWAITとSKIP LOCKEDオプションについて
- 8.0から追加された
NOWAIT
,SKIP LOCKED
オプションの紹介と説明
- 8.0から追加された
- 第123回 ロッキングリードのNOWAITとSKIP LOCKEDオプションについて
SmartStyle TECH BLOG (category MySQL)
- Nothing
Personarl blogs
(体調不良のため省略)
このブログ記事はGitHub上で管理されていますMySQL-weekly repository。Issue, pull-request歓迎です。(完全に同期できているわけではありません)
Update for last week (2020-05-25~ 2020-05-31)
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 #99593 Performance issues in 8.0.20
- 5.7.30と比較して8.0.20が3倍近く遅くなるケース(レポート中ではSELECT DISTINCT ...)があるという報告
- すでに過去のバグとして報告されていて、8.0.21で直るとのこと
Organization blogs
-
- Nothing
-
- Nothing
-
- Webinar June 10: Using eBPF for Linux Performance Analyses
- eBPFでLinuxのパフォーマンス解析. Percona CTOのPeter-sanが発表する様子
- EDT 10am~11amなので日本時間23~24時で参加できそう
- Best Practices for MySQL Backups
- MySQLのバックアップ方法を目的別に分けて紹介
- バックアップ方法、そのリストア方法合わせて、
mysqldump
,mydumper
,Percona XtraBackup
,myloader
を紹介している - え?オプション少なくてこれで本番環境バックアップして完璧だと思ってたらやばいよって?多分紹介なんでしょうね。Best Practiceとか言ってるけど。。。
- Webinar June 4: MySQL Ecosystem in 2020
- Webinar June 10: Using eBPF for Linux Performance Analyses
-
- 第122回 DockerでMySQLをもっと便利に活用してみる
- MySQLの検証環境をDockerで作るときにハマりやすいポイントや自動化方法のTips
- 第122回 DockerでMySQLをもっと便利に活用してみる
SmartStyle TECH BLOG (category MySQL)
- Nothing
Personal blogs
- MySQL 8.0 InnoDB ReplicaSet with Wordpress in OCI
- MySQL 8.0.20 New Features Summary
- 毎度おなじみOlivier-sanによる8.0マイナーバージョンアップによるNew Featuresのまとめblog(and slide,Youtube動画)
- 今回も1パッチバージョンで入ったNew Featuresで31ページのスライドが作られてますw
- yt-rename-databaseでかつての RENAME DATABASE っぽいことをする
- yoku0825-sanによるYoku-san no ToolKITに新しいツールが登場
- かつての
RENAME DATABASE
を実現してくれるツール。
- MySQL25年&MyNA(ユーザ会)20年記念イベントを開催しました
- MyNAによるMySQL25周年&MyNA20周年記念イベントの開催報告
- 3.x時代やそれ以前からMySQLと関わってきた方々の話が聞けてとてもおもしろかったです。開催ありがとうございます。
- MySQL max_connections は雑に設定しておけば良い
- idleなコネクションが増えたときにCPU, メモリをどの程度つかうのかの実験結果
- 大量の同時接続&クエリ同時実行による過負荷の対策の紹介
- MySQL の docker コンテナを起動した時の warning, error を調べつくす
- MySQLでredis storage engineを作った
- これからストレージエンジンを作る人へ向けて参考になる資料もまとめました。
このブログ記事はGitHub上で管理されていますMySQL-weekly repository。Issue, pull-request歓迎です。(完全に同期できているわけではありません)
Update for last week (2020-05-18~ 2020-05-24)
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 #99601 Broken Performance using EXIST function, increasing execution time each loop
- 8.0以降でストレージエンジンによらずクエリパフォーマンスが遅くなるケースが出ているという報告
- EXISTを含んだケースで実行するたびに遅くなるクエリがあったらしい
Organization blogs
-
- Nothing
-
- Nothing
-
- Backup and Restore in Percona Kubernetes Operator for Percona XtraDB Cluster
- Percona Kubernetes Operatorでのbackup方法の設定オプションと設定の仕方についての紹介
- MySQL Training and Education Is Here for You!
- Percona社が行っているMySQL trainingコースについて紹介
- Percona XtraDB Cluster 8.0 Behavior Change for pxc-encrypt-cluster-traffic
- pxc-encrypt-cluster-trafficによる設定と挙動の変更点について紹介
- Backup and Restore in Percona Kubernetes Operator for Percona XtraDB Cluster
-
- Nothing
SmartStyle TECH BLOG (category MySQL)
- Nothing
Personal blogs
- Happy Birthday MySQL
- 2020年5/23で25歳らしい。おめ。
- MySQL Security – Dual Password Support
- 8.0で入ったDual passwordの設定方法や確認方法など
- Automate MySQL Partitioning using events and procedures
- pt-query-digestでtcpdumpから集約せずに全てのクエリーを取り出す
- pt-query_digestのバグ(2020年以降の対応問題)は3.2.0以降で解決
--output
のバリエーションはmanかdocumentを見る
- こんにちはこんにちはこんにちは!を出すSQL
- 再帰CTEでは最初のクエリの結果をもとに型が決定されることによるハマリポイントの実例
- MySQLでCTEを使ってマンデルブロを描く
- CTEを使った必殺技
- MySQL 複数データセンター利用する場合のレプリケーショントポロジー考察
このブログ記事はGitHub上で管理されていますMySQL-weekly repository。Issue, pull-request歓迎です。(完全に同期できているわけではありません)
Update for last week (2020-05-11~ 2020-05-17)
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 #99485 Setting variable to CONCAT('') sets it to NULL instead of ''
- concatに空文字列を引数として渡す(
concat('')
)とempty stringになるはずだが、これを変数に代入するとNULL
になるバグ。 - 5.7.31, 8.0.21でfixedとのこと
Organization blogs
-
- Nothing
-
- Nothing
-
- New Feature in Percona XtraDB Cluster 8.0 – Streaming Replication
- Tuning MySQL/InnoDB Flushing for a Write-Intensive Workload
- MySQL 8.0でIOに関連するパラメータの解説。
- Multithreaded ALTER TABLE with pt-online-schema-change and myloader
- pt-oscとmyloaderを組み合わせてDDLを高速化する方法の紹介
- patchを当てて使う方法を紹介しているのみなので、公式ツールとしてのサポートは今後の様子
-
- 第121回 event_scheduler
- event, event_schedulerの使い方、注意点の紹介
- 第121回 event_scheduler
SmartStyle TECH BLOG (category MySQL)
- Nothing
Personal blogs
- MySQL Performance : XFS -vs- EXT4 Story
- Double WriteとXFS, EXT4に関連するパフォーマンス劣化や謎現象のお話。
- まだ結論はないように見えるけど今取り組んでいる内容が見えて面白い
- MySQL Security – Failed-Login Tracking and Temporary Account Locking
- ログイン試行回数やアカウントロック、アンロックの設定方法とerror出力の例の紹介
- Can we shrink InnoDB Buffer Pool?
- buffer_pool_sizeが大きすぎるかどうかを判断するための指標のとり方を紹介
- MySQL 8.0 の新機能 デュアルパスワードでパスワード変更時のダウンタイムを回避する
- デュアルパスワードを使ったパスワードの変更、確認方法と実行に必要な権限について
- MySQL 8.0.20 のハッシュジョイン(Hash Join)を INDEX があるテーブルで試してみる
- 8.0.20でのハッシュジョインの検証
このブログ記事はGitHub上で管理されていますMySQL-weekly repository。Issue, pull-request歓迎です。(完全に同期できているわけではありません)
Update for last week (2020-05-04~ 2020-05-10)
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 #99398 Data in wrong row on left join
- (よくわかっていません、要検証) 8.0.20で入った変更でnot nullのカラムをouter joinの駆動表にした場合にNULLフラグを正しく扱えずにtemporary tableを使わないGROUP BYでは結果が正しくなくなる(?)
- 8.0.21のチェンジログでドキュメントの修正が入る様子?
Organization blogs
-
- Nothing
-
- Nothing
-
- Setting up an InnoDB Cluster With a Few Lines of Code
- 60行以下のコードでN台のInnoDB clusterを構築するサンプルと説明
- Setting up an InnoDB Cluster With a Few Lines of Code
-
- Nothing
SmartStyle TECH BLOG (category MySQL)
- Nothing
Personal blogs
- Modify Multiple Documents in a MySQL Document Store Collection
- Dave Stokes-san
- document storeのオブジェクトに対して一括でupdateをかけるときはwhere句に当たる条件をtrueと設定する必要がある例を紹介
- MySQL Compressed Binary Logs
- jesper-san
- binary logの圧縮方法と注意点、圧縮率、パフォーマンス比較の実験結果を説明
- MySQL Security – Password Verification-Required Policy
- dasini-san
- Password Verification Policyの設定について考察
- 公式ドキュメントも参照のこと
- MySQL 8.0.20 で強化されたハッシュジョイン(Hash Join)を試してみる
- hmatsu47-san
- Hash Joinが適用されるケースを含めたパフォーマンス変化の実験結果まとめ
- MySQL 8.0.16 で実装された CHECK 制約を(いまさら)試してみる
- hmatsu47-san
- CHECK制約の紹介とサンプル
- MySQL 8.0 で NOWAIT / SKIP LOCKED(いまさら)
- hmatsu47-san
- 8.0から追加されたLocking readの紹介とサンプル
- MySQL8.0.20で追加・変更されたパラメータを眺める
- next4us-ti-san
- 8.0.20で追加されたパラメータとそれに関連する機能の説明
このブログ記事はGitHub上で管理されていますMySQL-weekly repository。Issue, pull-request歓迎です。(完全に同期できているわけではありません)
Update for last week (2020-04-27~ 2020-05-03)
MySQL Weeklyでは1週間ごとにMySQLのrelease-note, bug, official blog, organizationによるblog, 個人のblogをまとめ紹介しています。 更新は月曜 10時(AM)です。先週一週間のMySQL関連の更新を再確認するのにご活用ください。
また、このブログ記事はGitHub上で管理されていますMySQL-weekly repository。Issue, pull-request歓迎です。(完全に同期できているわけではありません)
Release note
Changes in MySQL 8.0.20 (2020-04-27, General Availability)
Account Management Notes
- 以前はroutineの定義を確認するにはglobalのselect権限だけがあればよかったが、これは権限範囲が広すぎるため、
SHOW_ROUTINE
権限を導入しより細かい権限制御が可能になった
Compilation Notes
- solarisでClangでもコンパイルできるようになった。(実験的なもので、production readyではない)
- EL7, EL8環境ではGCC8の前にGCC9でコンパイルできるか確認するようになった。
- Windows環境ではVisual Studio 2019がサポートされた環境であると表示するようになった
Deprecation and Removal Notes
- JSON_TABLE()関数を呼び出すときに
ON EMPTY
とON ERROR
の指定はどの順番でもできたが、これはSQL標準に反し、ON ERROR
の前にON EMPTY
を書かないといけないということからこれは非推奨になり、warningが出るようになった max_length_for_sort_data
はdeprecatedINSERT ... ON DUPLICATE KEY UPDATE
内で利用されるVALUES()
はdeprecatedで、今後のバージョンで完全に廃止予定
JSON Notes
rapidjson
ライブラリがupdateされた
Logging Notes
SIGHUP
シグナルと受けたときにerror logにstatusを書き込むのをやめた- JSON-formatのerror logでts(timestamp)の書き込みも行われるようになった
Optimizer Notes
- Hash joinが以下のような状況でも適用されるようになった
- Inner non-equi-joins
- Semijoins
- Antijoins
- Left outer joins
- Right outer joins
- インデックスレベルのoptimizer hintが追加された
- JOIN_INDEX
- NO_JOIN_INDEX
- GROUP_INDEX
- NO_GROUP_INDEX
- ORDER_INDEX
- NO_ORDER_INDEX
- INDEX
- NO_INDEX
- これらは既存のFORCE INDEX、IGNORE INDEXと意味的に重複するものがあるが、この2つのヒントはいずれdeprecatedになり、その後廃止される予定
Packaging Notes
- システムのcurlではなく、自身でcurlライブラリを含めるように変更
- RPMパッケージで
comp_err
ユーティリティが-test
サブパッケージに以降 - バンドルされているLZ4ライブラリを1.9.2にアップグレード
- バンドルされているlibeditライブラリを3.1にアップグレード
Performance Schema Notes
- グローバルレベルでしか起きないerrorに関する統計情報をセッション単位で収集することを廃止
Pluggable Authentication
- LDAP referralとして知られるLDAP検索を以上する機能の設定ができるようになった
- MySQL EnterpriseのSASL LDAP authentication pluginでGSSAPI/Kerberosがサポートされる
SQL Syntax Notes
- SELECT文の
INTO
句は以下の2つの位置に書くことができたが、今後はSELECT文の最後にしかかけなくなる。今回はdeprecatedで今後廃止予定FROM
の後- trailing locking clause(FOR UPDATEとか)の前
Test Suite Notes
perfschema.idx_compare_replication_applier_status
テストケースがupdateされた
X Plugin Notes
- 起動時やsessionの初期化時にconnectionが貼れなかったり、メモリ不足だったりしてたときのための修正など
- bug fixに見えるので省略
Functionality Added or Changed
- TINYBLOB以上のサイズのBLOB型をsort対象にした場合、row IDだけを返すようになっていたが、これによって内部的にLONGBLOBで実装されているJSON, GEOMETRY型のパフォーマンスが落ちていたので、修正された、しかし、この影響で数MB以上のJSONなどをソートするときに
Out of memory
エラーが発生する可能性がある。この場合はsort_buffer_size
を大きくする必要がある - Contention-Aware Transaction Scheduling(CATS)アルゴリズムによるロック待ち状態のトランザクションの実行順序の制御方法が導入され、これまでのFIFOではなくなった
- dbouble write bufferのための領域がsystem tablespaceからdoublewrite用のファイルに区別された。それによりdoublewrite用のシステム変数もいくつか追加された。
EXPLAIN ANALYZE
,EXPLAIN_FORMAT=TREE
にあった制限やバグのfix- macOSでも
-DWITH_LTO=1
CMakeオプションが利用できるようになった - binary logの圧縮が可能になった。
CHANGE MASTER TO
でREQUIRE_TABLE_PRIMARY_KEY_CHECK
オプションが追加された- X Protocolの圧縮アルゴリズムやそのlevelを選択可能になった
Bugs Fixed
かなり多いので省略
Changes in MySQL 5.7.30 (2020-04-27, General Availability)
省略。5.6も省略。
Bugs
基本的にMySQL Server, 5.7以上のbug fixのみまとめます
serverity >= S5(Performance)
でupdatedでdesc sort、結果の今週分Status == Closed
でID#
でdesc sort、結果の今週分を見るNothing
Organization blogs
-
- MySQL 8.0.20 Replication Enhancements
- 8.0.20で入ったReplicationに関連する機能の紹介
- Binary Log Compression
- Controlling Primary Key Checks on Secondaries
- 8.0.20で入ったReplicationに関連する機能の紹介
- Enforce Primary Key constraints on Replication
- 8.0.20で追加されたREQUIRE_TABLE_PRIMARY_KEY_CHECKに関する説明
- MySQL 8.0.20 Replication Enhancements
-
- Percona XtraBackup 8.x and MySQL 8.0.20
- Percona XtraDB Cluster 8.0のリリース告知
- Percona XtraBackup 8.x and MySQL 8.0.20
- 8.0.20で加えられたredo logフォーマットへの変更で8.0.20をxtrabackupが利用できなくなったという告知
- この解決ができるまで8.0.20ではxtrabackupはできない
- Group Replication and Percona XtraDB Cluster: Overview of Common Operations
- Percona XtraBackup 8.x and MySQL 8.0.20
-
- Nothing
SmartStyle TECH BLOG (category MySQL)
- Nothing
Personal blogs
今回多すぎたので紹介のみです
- MySQL 8.0.20: Thanks for the Contributions
- MySQL Performance : The New InnoDB Double Write Buffer in Action
- MySQL 8.0.20 Is Released
- MySQL 8.0.20: Index-Level Optimizer Hints
- Apress Blog: MySQL Performance Tuning Best Practices
- MySQL Security – Password Reuse Policy
- Database change tracking using MySQL EE Audit
- MySQLで未定義のユーザ変数の表示がおかしい(8.0.20)
- MySQL: COUNT(*) は 1 ??
- とみたさんの記事を見てUDFにトライ
- メモ:MySQLのサーバサイドでのプリペアド・ステートメント
- MySQLのユーザー定義関数(UDF)
- RubyでMySQLのUDFを作る
- mrubyudf : C を書かずに Ruby だけで MySQL の UDF を作る
- MySQL 8.0.20 でHASH JOINが効くケースが拡大した
- パフォーマンススキーマの計器の最大登録数について
- MySQL 8.0.20 で導入された binlog transaction compression をハイパー雑に検証する
- MySQLで今月の日付一覧を得る with 再帰CTE
このブログ記事はGitHub上で管理されていますMySQL-weekly repository。Issue, pull-request歓迎です。(完全に同期できているわけではありません)
Update for last week (2020-04-20~ 2020-04-26)
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 #99241 WITH_ZSTD=system fails with zstd 0.8.1 or older
-DWITH_ZSTD=system"
か、"-DWITH_SYSTEM_LIBS=ON"
をつけてコンパイルしたときにZSTD 0.8.1やそれ以下のバージョンだとfailする
Organization blogs
-
- Nothing
-
- Nothing
-
- Webinar 4/29: Distributed MySQL Architectures – Past, Present, and Future
- MySQL Group Replication – Partial Network Failure Performance Impact
- ネットワーク分断が起きたときのパフォーマンス低下の紹介
- 記事内の例では80~90%のパフォーマンス低下があった
- The Agenda is Set for Percona Live ONLINE 2020!
- アジャンダが決まってきた
- A Simple Approach to Troubleshooting High CPU in MySQL
- CPUが高負荷なときに原因のthread, queryを見つける方法の紹介
- [Warning] InnoDB: Difficult to Find Free Blocks in the Buffer Pool
[Warning] InnoDB: Difficult to Find Free Blocks in the Buffer Pool
というエラーはどういう意味なのかとその対処法の紹介
-
- 第120回 events_statements_summary_by_digestテーブルのパラメータ
- performance_schemaのevents_statements_summary_by_digestテーブルを利用する上で知っておきたいパラメータとその影響について
- performance_schema_digests_size
- max_digest_length
- performance_schema_max_digest_length
- performance_schema_max_digest_sample_age
- performance_schemaのevents_statements_summary_by_digestテーブルを利用する上で知っておきたいパラメータとその影響について
- 第120回 events_statements_summary_by_digestテーブルのパラメータ
SmartStyle TECH BLOG (category MySQL)
- Nothing
Personal blogs
海外のMySQLerたちのblogでPlanet MySQLの批判(とタイトルに入れているものもある)記事がありましたが、純粋にMySQLの技術に話ではないことと、読むのが面倒なため、それらはskipしました。
- Videos on using the MySQL Document Store with Relational Tables and the _id Field
- タイトル通り
_id
フィールドを使う方法を紹介したビデオのダウンロード先の紹介
- タイトル通り
- MySQL Security – Password Expiration Policy
- 期限付きpasswordの設定方法に関する紹介
- MySQL danger: comments and ALTER TABLE
- 何かしらのschemaのコメントを変更するときにALTER TABLE構文を使う必要事による危険性の紹介
- MySQLで今月の日付一覧を得る
- WITH句、Values構文を使って、特定の月の日付を列挙する方法のサンプル
このブログ記事はGitHub上で管理されていますMySQL-weekly repository。Issue, pull-request歓迎です。(完全に同期できているわけではありません)