2025年2月21日、22日の両日に亘って、東京は駒澤大学にて開催された OSC2025 Tokyo/Spring に参加してきました。event.ospn.jp駒澤大学でのOSC開催は、はじめて。まずは開催実現にご尽力くださった中の方々に御礼申し上げます。 目の前のロビーが結果として休憩コーナーのように使えて、全体としてゆったりとした贅沢な会場でした。 今回も日本MySQLユーザ会(MyNA)としてブース出展してきました。いつもどおりゆるゆるとしたブースですが、MySQLの最新情報をキャッチアップできていなかった方々に、最近のリリーススタイルや機能などについて紹介することができました。 まぁ…
TL;DR
- 特に何の結論もまだ出ていないベンチマーク
- スローログをテーブルに吐かせるのって現実的かどうかを見たかっただけ
-
--threads=3
なのでもうちょっと並列性を上げないと本番向きではない - ジェネラルログファイル吐かせるのとスロークエリログ全部吐かせるのは同じくらい性能劣化するよなあと思ってた(どっちもmutexは1つしかないから)けどこれくらいだと差はよくわからない
- CSVストレージエンジン遅い…ファイルサイズを大きくしていくともっと遅くなるかも?
久しぶりにベンチマーク取った。
ベンチマーク元: 8 CPUスレッド / 16GB Memory
ベンチマーク先: 2 CPUスレッド / 4GB Memory / 128MB buffer_pool /
10テーブルで100MB …
TL;DR
-
FLUSH TABLES WITH READ LOCK
は「今まさに実行中のクエリ」と競合する- メタデータロックと違って「生きているトランザクション」ではなくて「今まさに実行中のクエリ」とだけ
-
WITH READ LOCK
という名前ではあれどFLUSH TABLES
なのでSELECT
とも競合する
-
FLUSH TABLES WITH READ LOCK
は先に全体にGLOBAL read lock
を置いてから1つずつテーブルをFLUSH
する -
FLUSH TABLES WITH READ LOCK
をタイムアウトさせてもセッションを閉じない限りFLUSH待ちロック
は解放されない
FLUSH TABLES WITH READ LOCK
は実行中のクエリと競合する。
t1, t2, …
TL;DR
-
SHOW CREATE TABLE
でも桁数の表記がなくなっているけれどTINYINT(1) SIGNED
の時だけは表示がtinyint(1)
になる - これはドライバ(少なくともパッと思いつくのは Connector/J)との互換性のためらしい
MySQL 8.0では INT, TINYINT, BIGINT, ..etc. で (xx)
…
TL;DR
- boostを同梱していないMySQLやxtrabackupでboostのダウンロードっぽいところでcmakeが転けていたら
cmake/boost.cmake
を編集するとうまくいくことがある- boostorg.jfrog.io から archives.boost.io に変わってるっぽい
yoku0825/xtrabackup-monkey-patch を使って
XtraBackup 8.0.35-31
をビルドしようと思ったら、boostをダウンロードしてるっぽいところで転けた。
$ git clone git@github.com:yoku0825/xtrabackup-monkey-patch
$ cd xtrabackup-monkey-patch
$ git checkout checkout 8.0.35-31
$ cd src
$ cmake -DCMAKE_INSTALL_PREFIX=~/xb-8.0.35-1 -DWITH_BOOST=./boost -DDOWNLOAD_BOOST=1 -DFORCE_INSOURCE_BUILD=1
..
-- Downloading boost_1_77_0.tar.bz2 to /home/yoku0825/git/xtrabackup-monkey-patch/src/boost
-- …
[さらに読む]
2025年1月25日に大阪のいつもの会場で開催された「オープンソースカンファレンス 2025大阪(OSC2025 Osaka)」に参加してきました。event.ospn.jp 今回も日本MySQLユーザ会としてブース出展。 セミナーは、昨年に「いまいまMySQL」と称して最近のMySQLリリーススタイルの変更をお伝えしてきましたが、そろそろいいだろうということで、新ネタ用意する時間もとれないことから、今回はセミナーなしでの参加となりました。セミナーやらないと、ずっとブースまわりをうろうろしていることができるので、結構いいなぁと久々にこの感覚を味わいました。 最近ちょっとOSC含めていろいろ参加…
TL;DR
-
CREATE USER .. IDENTIFIED WITH caching_sha2_password AS x'..'
の形式で入れればMySQL側は元の文字列を知らないのでパスワードポリシーに引っかかることはない
自分で建てたわけではないMySQL を使って遊んでいるところだけれど、 PMM を入れる時にちょっと簡単なパスワードを使いたいと思った。
mysql> CREATE USER pmm@xxx IDENTIFIED BY 'xxx';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
いつものローカルLinuxだったら —initialize-insecure …
[さらに読む]TL;DR
- table_open_cache を増やすとメモリ使用量が増えるというのは聞いたことがあるけど実際どれくらい増えるのか調べてみたかった
- 1コネクションで1つずつ
SELECT * FROM t
で65535個のテーブルを開かせてみた。- かなりシンプルなテーブルなので複雑なのにするともっと食うかもしれない
- 競合が起こらないと仮定したケースなのでスピードはテーブルキャッシュヒット率に関わらずほぼ一定
- 起動直後が遅いのはデータディクショナリがあったまってないからじゃなかろうか
…