Community journal

The latest from the MySQL community

Ideas, releases, practical guides, and perspectives from the people building with MySQL.

Follow the feed
Showing entries 561 to 570 of 3186 « Previous | Next »
Update for last week (2020-08-17 ~ 2020-08-23)

MySQL Weeklyでは1週間ごとにMySQLのrelease-note, bug, official blog, organizationによるblog, 個人のblogをまとめ紹介しています。 更新は月曜 10時(AM)です。先週一週間のMySQL関連の更新を再確認するのにご活用ください。

また、このブログ記事はGitHub上で管理されていますMySQL-weekly repository。Issue, pull-request歓迎です。(完全に同期できているわけではありません)

Release note

( …

[さらに読む]
MySQL スロークエリログからやたら遅いクエリだけ取り出す

日常的に、long_query_time をちょっと超えているクエリが流れていて、スロークエリログが多く出力されているDBってあったりしますよね?

そんなログからノイズとなってしまっている、ちょっと遅いクエリは除いて、非常に重症のクエリのログだけに絞って見たいときどうするか。

今まで、grep や awk でゴニョゴニョしてがんばってたんですが、pt-query-digest を使えば簡単にできました・・・

pt-query-digest でフィルタだけする

pt-query-digest はスロークエリログを集計し、「遅いクエリランキング」等のレポートを生成できるツールです。SQLチューニングする時によく使っています。

…

[さらに読む]
MySQL ALTER TABLEとその影響まとめ

MySQLの初期のALTER TABLEの実装は非常にシンプルな実装でした。 新しいテーブル定義で(内部的に)一時テーブルを作成し、そこに既存のデータをコピーして、コピーが終わったら入れ替えます。コピー中は更新をブロックします。

MySQL v5.6 で オンラインDDL がサポートされ、更新がブロックされなくなりました。 また、v8.0 では、INSTANT ADD COLUMN が登場し、カラム追加が一瞬できるようになりました。

このように MySQL の …

[さらに読む]
MySQL 8.0 vs 外部キー制約 vs ALTER TABLEでメタデータロック待ちになったら疑うこと

TL;DR

[さらに読む]
AWS Aurora MySQL v5.6 から v5.7 へのアップグレードをちょっとだけ考えてみた

Aurora MySQL v5.6 のサポート期限がいつかわからない

現在、Auroraでは、MySQL v5.6 (Engine 1.x) とv5.7互換 (Engine 2.x) のデータベースが利用できます。

Oracleが開発しているオリジナルのMySQL v5.6(以降 Vanilla MySQLと記載) は、2021/02 にサポートが切れます。 Aurora MySQL は Amazonが独自に開発している互換DBです。Vanilla …

[さらに読む]
MySQLリリースノートを読む会を開催してみました(8.0.21)

2回目の「MySQL リリースノートを見てわいわい言う勉強会」を開催しました。今回は MySQL 8.0.21版。mysql.connpass.com 過去2回の知見、および今回得た情報の一部をメモとして書いておきます。 MySQL リリースノートのセクション いくつかのカテゴリに分かれて解説されている カテゴリは、一番下のほうに 「Functionality Added or Changed」と「Bugs Fixed」の2つがある。昔はこの2カテゴリしかなかった 上部にあるカテゴリ解説は、上記2つのカテゴリの中から、特に解説したいものがある場合にピックアップして詳細に説明している、という位置…

MySQL Parameters - プラグインとコンポーネントを有効にして Variable も追加

MySQL Parameters というページを公開してたら

@tmtms still love this https://t.co/388NNoxxfr but would be so cool to have group_replication parameters too ;-)

— lefred (@lefred) 2020年7月24日

と言われたんだけど、mysqld --no-defaults --help --verbose でパラメータ一覧を取得してるんで、プラグインであるグループレプリケーションは組み込まれる前だから値が取れないんだな。

と思ってたら、--plugin-load というオプションでできることを教えてもらった。

mysqld --plugin-load=group_replication.so …

[さらに読む]
MySQL Shell dumpInstance でバックアップ中はDDL が待機させられる

MySQL Sever Blog に MySQL Shell 8.0.21 の Dump / Import 機能についてエントリーが投稿されています。 並列化により非常に高速に Dump / Import 出来ることなどが示されてます。非常に強力なツールであることが感じられます。

MySQL Shell Dump & Load part 1: Demo! | MySQL Server Blog

とりあえず動かしてみる

\help util.dumpInstance で説明が見れます。 threads や maxRate オプションでパフォーマンスの調整ができそうです。

$ mysqlsh root@localhost
mysqlsh …
[さらに読む]
シンキノウ×デ×シルキノウ (CREATE TABLE ... SELECT)

Myリノベ 8.0.21に参加

先日「MySQL Release note でわいわい言う勉強会 8.0.21」に参加してまいりました。

今回も最新のMySQL8.0.21のリリースノートをみんなで見ながら、思いつくままに語る会で、その中で僕は相変わらずROM専ですが参加しておりました。

流れとしては坂井さんがオープニングトーク、次にまつさんが …

[さらに読む]
MySQL のロック範囲は実行計画で変わるという話

最近、ANDPADでデータベース周りの技術顧問をさせて頂いています。ANDPADのエンジニアの皆さんから「データベースのロックまわりを詳しく知りたい!」というお話を受けて、先日、ロック周りの社内勉強会を開催しました。

SQLでは一般的なプログラミング言語と違って、ロックの制御を明示的に記述しません。ロックは暗黙的に(自動的に)データベースが必要なロックを獲得します。データベースのロックが わかりにくい・むずかしい と言われることが多いのはこういった背景があると思います。

…

[さらに読む]