Update for last week (2019-10-07 ~ 2019-10-13)
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のみまとめます
Nothing
Organization blogs
-
- Nothing
-
- Nothing
-
- Centralization Vs. Decentralization of DBA Teams
- 中央集約型のチーム(Centralized)と非中央集約型(Centralized)のDBAチームの違いについての考察記事
- 中央集約型(Centralized)
- 1つのチームとして大体DBMS製品ごとにグループにされている
- ドキュメント、開発、マネジメントにおいて会社で共通の手法を取りやすい
- 運用に関して一貫性がある一方で、そのためにカスタマイズがしづらくvanilla状態で運用することになりやすい
- 一貫性を保てると新しいメンバーの適応速度や知見の横展開においてはメリットがある
- 大手企業でサービスやアプリケーションを複数持っている会社に見られがちで、こういうチームは往々にして新しい技術や挑戦に対して受け身になりやすい
- 非中央集約型(Centralized)
- 中央集約型の対策として、開発チームごとにDBAがつく非中央集約型でチームを構成することがある
- プロダクトにあったカスタマイズが進むことで社内では一貫性がなくなり、一度起きた問題が他のチームでも起きるようになり、車輪の再開発も起きるようになる
- 中央集約型(Centralized)
- どちらの方針が正解ということはないが重要なのは一貫性とコミュニケーションであり、もし非中央集約型にするのであれば、誰かが一貫性やコミュニケーションを担保する役割を担う必要があると結論づけている
- まあ当たり前の事しか言っていない気がするけど、一貫性やコミュニケーションの度合いをどう評価するか、どういう手段でこれらを担保するかを考えてみると面白いと思う
- 中央集約型のチーム(Centralized)と非中央集約型(Centralized)のDBAチームの違いについての考察記事
- Achieving Disaster Recovery with Percona XtraDB Cluster
- Percona Monitoring and Management (PMM) 2.0.1 Is Now Available
- PMM(Percona Monitoring and Managementの2.0.1がリリース)
- セキュリティやUIの改善があった
- Impromements, Fixed bugsの項目の列挙
- Centralization Vs. Decentralization of DBA Teams
-
- 第107回 CREATE TEMPORARY TABLEによる一時テーブルの利用
- TEMPORARY TABLEに関する詳細なまとめ
innodb_strict_modeがONで,ROW_FORMATがCOMPRESSED
だとtemporary tableは作れない- temporary tableは
show tables
に表示されないSELECT * FROM INNODB_TEMP_TABLE_INFO;
で確認 - binlog_formatごとのbinlogへの出力の違い
- 第107回 CREATE TEMPORARY TABLEによる一時テーブルの利用
SmartStyle TECH BLOG (category MySQL and Percona)
- MySQL の mysql_config_editor における制約について
- mysql_config_editorを使った際に気をつけるべきポイント、明示的な制約という意味ではなく未修正のバグについての説明
- https://bugs.mysql.com/bug.php?id=74691
- かなり前から直ってないから運用上は制約と考えても良さそう。。。
- MySQL の mysql_config_editor における制約について
-
- Nothing
-
- Nothing
-
- https://www.mysql.com/jp/news-and-events/seminar/downloads.html
- db tech show case Tokyo 2019の発表資料がある(発表者名のみ紹介)
- yoku0825-san
- inagaki-san
- ichirin2501-san
- ito-san
- 【ゲーム業界向けセミナー】ゲーム業界におけるMySQLの発表資料(発表者名のみ紹介)
- inagaki-san
- ikoma-san
- kajiyama-san
- nojima-san
- sejima-san
- matuno-san
- tom__bo
Personal blogs
MySQL Parallel Index Range Scans: One is Sometimes Better Than Two
- Index Range Scan(not covering index)の効率が悪いという指摘
- TABLE ScanとIndex Range Scanを実行するthread数をスケールさせてその際のQPSを比較
- resource groupでCPU socketを1,2で変えてみると1 socketしか使わないほうがパフォーマンスが良かった
- 要約する必要がないくらいまとまっているので、読んでみることをおすすめします。
The dark side of super_read_only
- J,F, Gagne-san
super_read_only
をONにすると勝手にread_only
もONになり、read_only
をOFFにするとsuper_read_only
もOFFになるという挙動の紹介- なんとドキュメントにも書かれているらしい。まじか。。。
IMHO clearly part of the ugly (or dark) side of MySQL
と言いたくなるのもわかる
MySQL 8.0.17現在、PRIMARY KEYやUNIQUE KEYのCOLLATEを変更しても何故か再起動まで反映されない
- yoku0825-san
- タイトル通りの現象についての調査記事
- ハハパパ問題を復習しつつcollationの変更がうまく効かない地獄を垣間見れる
- 正直、文字列型でPK, UKにしていてかつ英数字以外を入れるケースは僕の周囲では少ない、ただ発生したら結構厳しい
binlog_format= ROW + 式インデックス + mysqldumpでレプリケーションに失敗する可能性がある
- yoku0825-san
- タイトル通りの現象についての調査記事
- この状態が起こる原因は以下(元記事引用)
- binlog_format= ROW である
- ii. 式インデックスを使っている
- iii. 式インデックスを作って以降、そのテーブルにカラムを追加した
- iv. 論理バックアップからリストアしてスレーブを作成
- ということでだいぶ影響範囲が大きいように思える。とりあえず式インデックス今から入れるのはやめたほうが良さそう
- 調査の様子をibd2sdi, mysqlbinlogを使って説明してくれていて、とてもためになる
- affects meは押しましたね? (https://bugs.mysql.com/bug.php?id=96986 )
-
- sakaik-san
- 緯度経度の表現方法として"度"と"度分秒"で表す方法がある、この内"度分秒"から"度"の単位に変換してくれるstored functionの紹介
- そもそも緯度経度の表現方法が複数あることを知らなかった。。。
このブログ記事はGitHub上で管理されていますMySQL-weekly repository。Issue, pull-request歓迎です。(完全に同期できているわけではありません)
Update for last week (2019-09-30 ~ 2019-10-06)
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 #???
- Nothing
Organization blogs
-
- Nothing
-
- Nothing
-
- Experimental Binary of Percona XtraDB Cluster 8.0
- (Experimental Binaryとは?がわかりませんが)10/1にリリース
- PXC8.0ではGalera4になっていて、それに伴う新機能がリストされている
- Percona XtraDB Cluster 8.0 New Feature: wsrep_sst_auth Removal
- PXC8.0の
wsrep_sst_auth
機能削除の説明 - 認証情報がconfiguration fileにplain textで入っているのでそのセキュリティを注意しないといけなかった問題の解決
- PXC8.0の
- Percona XtraDB Cluster 8.0 (experimental release) : SST Improvements
- PXC8.0のSSTに関連する変更の列挙
- Top 5 Takeaways from Percona Live Europe 2019
- Percona Live Europe 2019の発表まとめのような何か
- PMM2良くなったよ
- Percona Distribution for PostgreSQL成熟してきたよ
- どの企業も複数DB使って管理は複雑になってきているよ
- OSS最高
- Percona Live Europe 2019の発表まとめのような何か
- Experimental Binary of Percona XtraDB Cluster 8.0
-
- Nothing
-
- How to Troubleshoot MySQL Database Issues
- タイトルどおりどうやってトラブルシュートするかではない
- severalninesのClusterControlという製品(free版もあるみたい)を使ってトラブルシュートしやすい環境を作る紹介
- What’s New in MySQL Galera Cluster 4.0
- Galera Cluster 4.0の新機能紹介
- Streaming Replication周りの説明
- How to Troubleshoot MySQL Database Issues
-
- Nothing
Personal blogs
- InnoDBのすゝめ(仮)
- sejima-san
- 【ゲーム業界向けセミナー】ゲーム業界におけるMySQL での瀬島さんの発表資料
- ゲームのバックエンドとしてMySQLを運用されてきた知見が詰まった60p超の大作
- mysql_affected_rows()を活用する方法やシャーディングの目安、大量のデータを削除する際のロックを調整するために2ndary key -> PKとindexを2つ走査せずslaveで2ndary indexからPKを引いて、masterからPK指定で削除するテクニックなど知見が盛りだくさん
- ちなみに大量レコードの削除方法に関してはyoku0825-sanから別のテクニックを消化してもらいましたMySQLから大量のレコードをちまちま削除するメモ
- この分量を発表時間30分ですべてを話しきれるわけもなく、再度もしくは分割してどこかの機会で聞けるのを楽しみにしています
Update for last week (2019-09-23 ~ 2019-09-29)
MySQL Weeklyでは1週間ごとにMySQLのrelease-note, bug, official blog, organizationによるblog, 個人のblogをまとめ紹介しています。
更新は月曜 10時(AM)です。先週一週間のMySQL関連の更新を再確認するのにご活用ください。
また、このブログ記事はGitHub上で管理されていますMySQL-weekly repository。Issue, pull-request歓迎です。(完全に同期できているわけではありません)
Release note
- Nothing
Bugs
基本的にMySQL Server5.7以上のbug fixのみまとめます
Bug #96984 Typo in documentation (not 5.8)
- Version: 8.0
- https://dev.mysql.com/doc/refman/8.0/en/binary-log.html にあったtypo修正
Organization blogs
-
- Nothing
-
- Nothing
-
Why Database Schema Optimization Matters
- schema optimization mattersという大きめなタイトルだけど、この記事内で話しているのは適切なサイズの型(int <-> bigint)を選択することでdisk sizeが変わるからコストの面でも重要だよねというくらい
- 記事の最初で2016年のPercona LIVEでの発表動画が紹介されていて、これを見るともう少し型の違いによるMySQLへの影響を説明している(indexを含めた影響とかbuffer_poolへの影響とか)
Explore Percona Monitoring and Management on Your Own with Linode
- Linodeというcloud hosting serviceを使ってPMM2を簡単に試すサンプルの紹介
Running Percona XtraDB Cluster on Raspberry PI 3
- Raspberry PI 3でPXCを構成する方法を紹介
Multiplexing (Mux) in ProxySQL: Use Case
- 突然
Multiplexing
の物理学の歴史的な話を始めて、ProxySQLのコネクションのMultiplexingに移るという荒技を放ってくる(嫌いではない) - ProxySQLのMultiplexingには利点もあるがいくつかの制約もある
- そのうちの1つ、
@
をつけてクエリを流すと全コネクションで一気にmultiplexingが終わるというものについて説明とProxySQLから@
を含むクエリの見つけ方を説明
- 突然
Upgrading to MySQL 8? Meet the MySQL Shell Upgrade Checker Utility
SmartStyle TECH BLOG (category MySQL and Percona)
- Nothing
-
- Nothing
-
- Nothing
Personal blogs
Upgrading from MySQL 5.7 to MySQL 8.0 Part I
- Dave Stokes-san
- mysql-shellを使ったupgrade checkerの紹介
- サンプルで実行結果を載せている
Upgrading from MySQL 5.7 to MySQL 8.0 Part II
- Dave Stokes-san
- さすがにインストールしてコマンド打っただけでは簡単すぎたと思ったのかPart2
- upgrade checkでよく出る指摘は予約語をschema名で使っている場合とutf8, utf8mb4の変換が指摘されることだそう
- 予約後はバッククォートでくくっていれば安全だから無視もできる
- utf8のカラムはutf8mb4にalterすると良いよ、と言ってるけどonlineではできないのよね、、、
MySQL table_encryption_privilege_check パラメータの挙動
- mita2-san
default_table_encryption
に続き、table_encryption_privilege_check
の説明- (まとめ部分抜粋) データの暗号化を強制することが以下の運用を行うことで実現できます
- table_encryption_privilege_check をONにしておく
- DBAがENCRYPTION=Yを指定したデータベースを作成する
- 開発者にはそのデータベースにのみ権限を付与する
Update for last week (2019-09-17 ~ 2019-09-23)
月曜日に先週一週間のMySQL関連の更新を再確認するのにご活用ください。
Release note
(https://dev.mysql.com/doc/relnotes/mysql/8.0/en/)
- Nothing
Bugs
serverity >= S5(Performance)
でupdatedでdesc sort、結果の今週分を見る
条件を適用した検索結果
- Nothing
Organization blogs
- MySQL server blog: https://mysqlserverteam.com/
- Nothing
- MySQL High Availability blog: https://mysqlhighavailability.com/
- Nothing
- Percona blog (MySQL): https://www.percona.com/blog/
- Percona XtraDB Cluster 5.6.45-28.36 Is Now Available
- XtraDB Cluster 5.6.45-28.36のリリース告知
- 以下に基づいたupdateがある
- Percona Server 5.6.45-86.1
- Codership WSREP API release 5.6.44
- Codership Galera library 3.28
- Percona XtraDB Cluster 5.7.27-31.39 Is Now Available
- Manage Your Complex Database Environments with Percona Monitoring and Management (PMM)2 GA
- A Guide to Installing Percona Monitoring and Management (PMM)2 For the First Time
- PMM2をinstallする方法をコマンド付きで紹介している
- docker, linuxいくつかの環境, MySQL, MongoDB, PostgreSQL, ProxySQLのmonitoringの始め方が説明されている
- Update on fsync Performance
- Percona XtraDB Cluster 5.6.45-28.36 Is Now Available
- MySQL道普請: https://gihyo.jp/dev/serial/01/mysql-road-construction-news
- Nothing
- SmartStyle TECH BLOG (MySQL): https://www.s-style.co.jp/blog/category/tech/mysql/ & https://www.s-style.co.jp/blog/category/tech/percona/
- Nothing
- Severalnines Database Blog: https://severalnines.com/database-blog
- Yakst MySQL-tag: https://yakst.com/ja/tags/mysql
- Nothing
Personal blogs
- My MySQL Account Has TWO Passwords
- Dave Stokes-san
- 8.0.14で入ったdual passwordの説明
- secondary passwordの設定例
ALTER USER 'dave'@'deardave.xyz' IDENTIFIED BY 'deardave2' RETAIN CURRENT PASSWORD;
- secondary passwordの削除
ALTER USER 'dave'@'deardave'xyz' DISCARD OLD PASSWORD
- Create MySQL Test Instance with Oracle Cloud Free Tier
MySQL 8.0.17 – New Features Summary
- Olivier Dasini-san
- MySQL 8.0.17で入った機能のまとめ
- お品書き(Agenda)は以下
- CLONE Plugin – Native automatic provisioning in the server
- Multi-valued indexes
- JSON functions using multi-valued indexes
- JSON schema validation
- New binary collation for utf8mb4
- MySQL Shell Enhancements
- MySQL Router Enhancements
- InnoDB Cluster Enhancements
- Group Replication Enhancements
- Replication Enhancements
- Thanks to the Contributors
- いや多くね?これ
8.0
ではなくて8.0.17
のNew Featuresなので、、、 - 発表資料と思われるスライドもあるので、要チェック
MySQL table_encryption_privilege_check パラメータの挙動
- mita2-san
table_encryption_privilege_check
変数に関する説明とサンプル- この値を設定することで、作成するテーブルの暗号化、非暗号化を強制できる
- MySQL Casual Talks vol.12の復習
- tom__bo
- 瀬島さんにアドバイスもらったRBR binlogのlog_eventに関連するWLを読んだまとめ
このブログ記事はGitHub上で管理されていますMySQL-weekly repository。Issue, pull-request歓迎です。(完全に同期できているわけではありません)
Update for last week (2019-09-09 ~ 2019-09-16)
月曜日に先週一週間のMySQL関連の更新を再確認するのにご活用ください。
Release note
(https://dev.mysql.com/doc/relnotes/mysql/8.0/en/)
- Nothing
Bugs
serverity >= S5(Performance)
でupdatedでdesc sort、結果の今週分を見る
- Nothing
Organization blogs
MySQL server blog: https://mysqlserverteam.com/
- Nothing
MySQL High Availability blog: https://mysqlhighavailability.com/
- Nothing
Percona blog (MySQL): https://www.percona.com/blog/
- Percona Toolkit 3.1.0 Is Now Available
- Percona Toolkitの新しいバージョンのリリース告知
- postgresql向けのコマンドと既存のpt-stalk, pt-online-schema-changeで修正あり
- pt-online-schema-changeは8.0.14~17だとある条件ではMySQLを殺してしまうらしくそれらのバージョンではないかのチェックが入ったらしい(詳細未確認)
- Webinar 9/17: Percona XtraBackup vs Mariabackup vs MySQL Enterprise Backup
- タイトルのwebinarがあるらしい、まだ間に合うはず
September 17th, 2019 at 10:00 AM PDT (UTC-7)
となっているので、JSTだと18日 02:00から
- Percona Monitoring and Management (PMM) 2 Beta 7 Is Now Available
- Query Analytics, GUI dashbordのimprove
- Grafana, Prometheus, Percona Distribution for PostgreSQLの新バージョン対応など
- すでに元記事がまとまっているので、元記事を参考に
- Which Indexes are Cached? Discover with PMM.
- Percona Toolkit 3.1.0 Is Now Available
MySQL道普請: https://gihyo.jp/dev/serial/01/mysql-road-construction-news
- 第105回 MySQLでドローンを飛ばしてみる
- ドローン飛ばすらしい
- 第105回 MySQLでドローンを飛ばしてみる
SmartStyle TECH BLOG (MySQL): https://www.s-style.co.jp/blog/category/tech/mysql/ & https://www.s-style.co.jp/blog/category/tech/percona/
- Nothing
Severalnines Database Blog: https://severalnines.com/database-blog
- Nothing
Yakst MySQL-tag: https://yakst.com/ja/tags/mysql
- Nothing
Personal blogs
MySQL InnoDB Cluster – Easy Recovering and provisioning
- Olivier Dasini-san
- CLONE pluginを使ったInnoDB cluster上でのrecovery, provisioningの説明
- cluster.status()の結果付きで詳しい
- そろそろ私も手を動かさねば...
MySQL Casual Talks vol.12 で発表してきた
- mita2-san
- mita2さんに発表いただいた"MySQLの容量とか圧縮まわり"の発表に関して
- アンケートがバラけたのは「身構える」の受け取り方がそれぞれだったのかなと思いました。
- 「どのくらいのサイズを超えると身構える?」という質問で、僕は300GBと回答しました。
- HammerDBをCLIで使うなど:まとめ、あるいは、目次の代わりに
- MySQL Casual Talks vol.12を開催しました;
- tom__bo
- 開催しましたー!!
- 参加・発表ありがとうございました。
- 開催後の反省と後語りを書いています。
他
- mita2さんのスライドの39ページ目、secondary indexとPKの関係の図、未だに奥野さんの図が出てきて、やっぱりこれ以降説明し直した人いないんだなーと思ったりしました。
- 完全に宣伝ですが、社内用に説明資料を作ったので、これもそのうち公開できると思います。
- ↓一部だけチラ見せ
- もちろん参考文献は奥野さんのブログ、著書、そして、社内説明用の資料としての方針決定にmita2さんの社内向け資料を参考にさせていただきました。
www.slideshare.net
このブログ記事はGitHub上で管理されていますMySQL-weekly repository。Issue, pull-request歓迎です。(完全に同期できているわけではありません)
Update for last week (2019-09-02 ~ 2019-09-09)
月曜日に先週一週間のMySQL関連の更新を再確認するのにご活用ください。
Release note
(https://dev.mysql.com/doc/relnotes/mysql/8.0/en/)
- Nothing
Bugs
serverity >= S5(Performance)
でupdatedでdesc sort、結果の今週分を見る
- Nothing
Organization blogs
MySQL server blog: https://mysqlserverteam.com/
- Nothing
MySQL High Availability blog: https://mysqlhighavailability.com/
- Nothing
Percona blog (MySQL): https://www.percona.com/blog/
MySQL道普請: https://gihyo.jp/dev/serial/01/mysql-road-construction-news
- Nothing
SmartStyle TECH BLOG (MySQL): https://www.s-style.co.jp/blog/category/tech/mysql/ & https://www.s-style.co.jp/blog/category/tech/percona/
- MySQL8.0.17で導入されたCLONEプラグインについて
- Cloneプラグインを利用してローカルへの保存、slaveの作成を行う方法を紹介
- dbdeployer, systbenchのコマンドも載せている他、group replicationでの使い方も紹介されている
- また、clone pluginに関連するパラメータも整理されていてわかりやすい
- MySQL8.0.17で導入されたCLONEプラグインについて
Severalnines Database Blog: https://severalnines.com/database-blog
- Nothing
Yakst MySQL-tag: https://yakst.com/ja/tags/mysql
- Nothing
Personal blogs
- 日本MySQLユーザ会会(MyNA会) 2019年8月に参加してきました
- yoku0825-san
- MySQLユーザ会会の参加記
- 当日の発表者のスライドやおもしろポイントがまとまっています
- HammerDBをCLIで使うなど(7):MySQLにTPC-Hを実行してみる
このブログ記事はGitHub上で管理されていますMySQL-weekly repository。Issue, pull-request歓迎です。(完全に同期できているわけではありません)
Update for last week (2019-08-26 ~ 2019-09-01)
月曜日に先週一週間のMySQL関連の更新を再確認するのにご活用ください。
Release note
(https://dev.mysql.com/doc/relnotes/mysql/8.0/en/)
- Nothing
Bugs
serverity >= S5(Performance)
でupdatedでdesc sort、結果の今週分を見る
Bug #96652 CPU load on MySql Server due to MySqlRouter
- 3ノードのMySQLクラスタ, 10数個のMySQL Router Clientを接続すると、何もクエリがない状態でも1つのMySQL Routerのホストのloadaverageが2.5になった。
- cluster memberを取得するために実行されている3つのJOINを含むクエリが重い様子
Organization blogs
MySQL server blog: https://mysqlserverteam.com/
- Nothing
MySQL High Availability blog: https://mysqlhighavailability.com/
- Nothing
Percona blog (MySQL): https://www.percona.com/blog/
- Using linux-fincore to Check Linux Page Cache Usage
- MySQLと直接関係ないがtagもMySQLがついているので紹介
- linux-fincore と記事内で書かれているツール(linux-ftools)の紹介
- ファイルを指定して、ページキャッシュに乗っているか、どの程度のページを確保しているかを確認することができる
- Using linux-fincore to Check Linux Page Cache Usage
MySQL道普請: https://gihyo.jp/dev/serial/01/mysql-road-construction-news
- 第104回 MySQLのROLE[その2]
- 第102回の概要・作成方法に続くrole機能の紹介
mandatory_roles
,active_all_roles_on_login
について説明
- 第104回 MySQLのROLE[その2]
SmartStyle TECH BLOG (MySQL): https://www.s-style.co.jp/blog/category/tech/mysql/ & https://www.s-style.co.jp/blog/category/tech/percona/
Severalnines Database Blog: https://severalnines.com/database-blog
Yakst MySQL-tag: https://yakst.com/ja/tags/mysql
- Nothing
Personal blogs
- Join the Code ONE MySQL Track at Oracle Open World in San Francisco
- MySQL Technology Cafe #5 に参加してきた
- mita2-san
- MySQL Technology Cafe #5への振り返り記事
- HammerDBをCLIで使うなど(2):MySQLにTPC-Cを実行してみる
このブログ記事はGitHub上で管理されていますMySQL-weekly repository。Issue, pull-request歓迎です。(完全に同期できているわけではありません)