Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
4
Help us understand the problem. What is going on with this article?
@mita2

MySQL 8.0 DMR と 5.7 パラメータ比較

More than 3 years have passed since last update.

この記事は MySQL Casual Advent Calendar 2016 の14日目です。

MySQL 8.0 Developer Milestone Release が9月にリリースされました(`・ω・´)
早速、5.7と比較してパラメータがどのように変化したか差分を確認してみました。

利用したバージョン

8.0.0-0.1.dmr と 5.7.16 でSHOW GLOBAL VARIABLESを実行し、得られた項目を比較しています。

なくなった設定項目

設定項目 用途 廃止理由
ignore_db_dirs データディレクトリ内のディレクトリでデータベースとして扱いたくないものを指定する。 データディクショナリ機能によりディレクトリベースでの管理は廃止。
*innodb_checksums InnoDBのデータファイルに対してチェックサムを実行するかどうか選択します。 innodb_checksum_algorithm に一本化。
*innodb_file_format *innodb_file_format_check *innodb_file_format_max InnoDBのデータファイルの形式を選択します。 従来は互換性のため古い Antelope フォーマットを選択することもできましたが、8.0で廃止。
*innodb_large_prefix このオプションを有効にすると、DYNAMIC および COMPRESSED 行フォーマットを使用する InnoDB テーブルで、767 バイトよりも長い (最大で 3072 バイトの) インデックスキープリフィクスが許可されます。 常にONに
*innodb_locks_unsafe_for_binlog InnoDBのギャップロックの挙動を変更する。 トランザクション分離レベルをREAD-COMMITEDにすることで同様の効果が得られるため廃止。
*innodb_stats_sample_pages テーブルの統計情報を更新するときにサンプリングするページ数を指定。大きくすると統計情報の正確性が増すが、負荷が増える。 innodb_stats_transient_sample_pages に一本化されました。
*innodb_support_xa レプリケーションの安全性とパフォーマンス確保のため、廃止。InnoDB XAは無効にできなくなりました。
sync_frm データディクショナリ機能により廃止。

* は MySQL 5.7以前で廃止が予告されていたもの。

増えた設定項目

これまでのtable_definition_cacheに加えて、スキーマ、ストアド、テーブルスペースのデータディクショナリオブジェクトキャッシュが増えてました。
スキーマやストアドを大量に使うケースでなければ、調整しなくて良いでしょう(たぶん)。

設定項目 用途 デフォルト
information_schema_stats information_schema でテーブル情報を参照する際、キャッシュされたテーブル情報を利用するか否か。CACHED(Default)の場合、キャッシュされた統計情報を利用する。LATESTの場合、都度テーブルに統計情報を取得しにいくため、最新の情報が見れるが、負荷がかかる場合がある ON
performance_schema_error_size P_Sのerror instrument のサイズ 1043
persisted_globals_load mysqld-auto.cnf の有効無効を選択。無効にした場合、SET PERSIST で設定した設定値は無効になる。 ON
schema_definition_cache データディクショナリ機能により導入された。ディクショナリオブジェクトキャッシュ、キャッシュするスキーマオブジェクトの数を指定 256
stored_program_definition_cache データディクショナリ機能により導入された。ディクショナリオブジェクトキャッシュ、キャッシュするストアドオブジェクトの数を指定 256
tablespace_definition_cache データディクショナリ機能により導入された。ディクショナリオブジェクトキャッシュ、キャッシュするテーブルスペースのオブジェクトの数を指定 256

値に変更があった設定項目

instrument の各最大値に変更がありました。instrument が増えたことによる微調整でしょう。

設定項目 MySQL 5.7 MySQL 8.0DMR
performance_schema_max_memory_classes 320 350
performance_schema_max_rwlock_classes 40 50
performance_schema_max_statement_classes 193 201

まとめ

  • DMRではまだ差分は少なく、どのように設定すべきか悩むようなパラメータもなさそうでした。

明日の MySQL Casual Advent Calendar 2016eshimizuさんです。

4
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
mita2

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
4
Help us understand the problem. What is going on with this article?