MySQL 8.0 で default_table_encryption
パラメータが追加されてました。
「テーブルの暗号化をデフォルトで有効にするオプションかな?」と思って、CREATE TABLEしてみるも変わらず・・・
マニュアル見ると、データベースとテーブルスペースに効くと書いてありました・・・。名前が紛らわしい・・・。
Defines the default encryption setting applied to schemas and
general tablespaces when they are created without specifying an
ENCRYPTION clause.
このパラメータを有効化した状態で、ENCRYPTIONオプションを省略してCREATE
DATABASEすると、ENCRYPTION='Y'が暗黙的に追加されます。
mysql> SHOW VARIABLES LIKE …
日本MySQLユーザ会会(MyNA会) 2019年8月 に参加してきました。 とんぼさんのMySQL weeklyばなし
- About MySQL Weekly - Speaker Deck
- MySQL Weekly
- 「メリット: 普段、流れてくるブログエントリを全部とか読めないけど強制的に読むようになるから読めるようになる」
- とてもわかる
- 「デメリット: つらい。アップデートがリリース(8.0.17)された時は超つらかった」
- とてもわかる
- とても読みやすくてわたしもお世話になっているので、長続きしてほしい…!
- …
前回の、MySQL Technology Cafe #4 に続き、#5
に参加してきました。
タイムテーブル
| 時間 | 内容 | 登壇者 |
|---|---|---|
| 18:00-18:25 | 受付 | - |
| 18:25-18:30 | はじめに | MySQL GBU |
| 18:30-19:15 | MySQL 8.0 の便利機能とSQL標準 | MySQL テクニカルアナリスト 木村明治 氏 |
| 19:30-19:40 | MySQL Binlog のパケットと自作クライアント | 高野周哉 氏 |
| … |
プロシージャの中身のクエリはスロークエリログに落ちない の続き。
Vanilla MySQLだとプロシージャの中身がログに落ちませんが、Percona Server ではスロークエリログが拡張されていて、ログに落ちます。
log_slow_sp_statements
で出力の有無を設定します。デフォルトではプロシージャの中身をスロークエリログに出力する設定になってます。
mysql> SHOW GLOBAL VARIABLES LIKE
'log_slow_sp_statements';
+------------------------+-------+
|
Variable_name
| Value |
+------------------------+-------+
| log_slow_sp_statements | …
プロシージャの中身のクエリはスロークエリログに落ちない の続き。
Vanilla MySQLだとプロシージャの中身がログに落ちませんが、Percona Server
ではスロークエリログが拡張されていて、ログに落ちます。
log_slow_sp_statements
で出力の有無を設定します。デフォルトではプロシージャの中身をスロークエリログに出力する設定になってます。
mysql> SHOW GLOBAL VARIABLES LIKE
'log_slow_sp_statements';
+------------------------+-------+
| …
とあるMySQLのデータベースで、性能劣化した疑いのあるプロシージャがありました。
プロシージャには複数のSELECTやINSERTが含まれています。
どのSQLが遅かったか突き止める方法はあるのでしょうか?
プロシージャに含まれている、各SQLはスロークエリログに落ちるんでしょうか?
試してみます。
テスト用に遅いプロシージャを作ります。
ログを出します。
DELIMITER //
CREATE PROCEDURE sample()
BEGIN
SELECT SLEEP(10);
END
//
DELIMITER ;
mysql> SET GLOBAL slow_query_log = ON;
Query OK, 0 rows affected (0.00 sec)
mysql> SET GLOBAL long_query_time = 0;
Query OK, 0 rows affected (0.00 sec)
…