Upgrade to Pro — share decks privately, control downloads, hide ads and more …

[HeatWavejp Meetup #04] MySQL HeatWave 2023年9月 ...

[HeatWavejp Meetup #04] MySQL HeatWave 2023年9月 最新アップデート情報 [村田 太 氏(スマートスタイル)]

HeatWavejp Meetup #04 MySQL HeatWave on AWS の 〇〇 やってみた!? & Oracle CloudWorld 2023 現地参加レポート(2023/10/12 開催)の講演資料です。

【講演内容】
MySQL HeatWave 2023年9月 最新アップデート情報

1. OCI リリースノートから主要リリース情報のピックアップ (2023/8月~)
 -データストレージサイズのオンライン拡張
 -遅延レプリケーションを使用したチャネルと主キーの生成オプション
 -監査プラグイン(Audit Plugin)
 -読み取りレプリカの選択項目の追加

【発表者】
村田 太 氏
株式会社スマートスタイル データベース&クラウド事業部 技術部

【イベント情報】
HeatWavejp Meetup #04
https://heatwavejp.connpass.com/event/296655/

More Decks by HeatWavejp(MySQL HeatWave Japan User Group)

Other Decks in Technology

Transcript

  1. Copyright © 2023 HeatWavejp All Rights Reserved. HeatWavejp Meetup #04

    MySQL HeatWave 最新アップデート情報 2023年10月12日(木) 株式会社スマートスタイル
  2. Copyright © 2023 HeatWavejp All Rights Reserved. アジェンダ 1. OCI

    リリースノートから主要リリース情報のピックアップ (2023/8 ~ 2023/10/12)
  3. Copyright © 2023 HeatWavejp All Rights Reserved. 1. OCI リリースノートから主要リリース情報のピックアップ

    (2023/8月~) サマリー 2023.8.14 MySQL HeatWave : 遅延レプリケーションを使用したチャネルと主キーの生成オプションが実装 2023.8.15 MySQL HeatWave : 監査プラグインが実装 Oracle Cloud Infrastructure Release Notes : https://docs.oracle.com/en-us/iaas/releasenotes/services/mysql-database/ Heatwave on AWS Release Notes : https://dev.mysql.com/doc/heatwave-aws/en/heatwave-aws-relnotes.html 2023.10.6 MySQL HeatWave : 読み取りレプリカの選択項目(シェイプ、バージョン)の追加 2023.8.8 HeatWave on AWS :データストレージサイズのオンライン拡張が実装
  4. Copyright © 2023 HeatWavejp All Rights Reserved. 1. OCI リリースノートから主要リリース情報のピックアップ

    (2023/8月~) データストレージサイズのオンライン拡張 • ストレージサイズを増やす際に DB システムの再起動が不要 ✓ 6 時間に 1 回しか実行できない ✓ 増加のみで減少は対応していない • バックアップからリストアする際にも、ストレージサイズを増やして新しい DB システムを作成することが可能 • 増加中もクエリの実行が可能
  5. Copyright © 2023 HeatWavejp All Rights Reserved. 1. OCI リリースノートから主要リリース情報のピックアップ

    (2023/8月~) 遅延レプリケーションを使用したチャネルと主キーの生成オプション • インバウンドレプリケーション用のオプションに以下の 2 つが追加 ✓ 主キーの生成(GENERATE_IMPLICIT_PRIMARY_KEY) ✓ レプリケーション遅延
  6. Copyright © 2023 HeatWavejp All Rights Reserved. 1. OCI リリースノートから主要リリース情報のピックアップ

    (2023/8月~) 遅延レプリケーションを使用したチャネルと主キーの生成オプション ✓ 主キーの生成(GENERATE_IMPLICIT_PRIMARY_KEY) • 主キーのないテーブルを作成した際にレプリカ側で自動的に不可視の主キー(※)が作成 ※ https://dev.mysql.com/doc/refman/8.0/en/create-table-gipks.html • レプリカ側では REQUIRE_TABLE_PRIMARY_KEY_CHECK = GENERATE に設定 ✓ レプリケーション遅延 • 遅延レプリケーション(※)が有効 ※ https://dev.mysql.com/doc/refman/8.0/ja/replication-delayed.html mysql> SELECT * FROM performance_schema.replication_applier_configuration¥G *************************** 1. row *************************** CHANNEL_NAME: replication_channel DESIRED_DELAY: 15 PRIVILEGE_CHECKS_USER: 'admin'@'%' REQUIRE_ROW_FORMAT: YES REQUIRE_TABLE_PRIMARY_KEY_CHECK: GENERATE ASSIGN_GTIDS_TO_ANONYMOUS_TRANSACTIONS_TYPE: OFF ASSIGN_GTIDS_TO_ANONYMOUS_TRANSACTIONS_VALUE: NULL
  7. Copyright © 2023 HeatWavejp All Rights Reserved. 1. OCI リリースノートから主要リリース情報のピックアップ

    (2023/8月~) 監査プラグイン(Audit Plugin) • MySQL Enterprise Audit プラグイン()が利用可能 • デフォルトでは無効になっているので有効にする必要がある https://dev.mysql.com/doc/refman/8.0/ja/audit-log-filtering.html [すべてのユーザーのすべての監査可能イベントを出力] • デフォルトから変更されているシステム変数は以下の通り(変更不可): mysql> SELECT audit_log_filter_set_filter('log_all', '{ "filter": { "log": true } }'); Variable_name Value Default Value audit_log_buffer_size 10M 1M audit_log_compression GZIP NONE audit_log_database mysql_audit mysql audit_log_file /db/audit/audit.log [datadir]/audit.log audit_log_flush_interval_seconds 60 0 audit_log_format JSON NEW audit_log_format_unix_timestamp ON OFF audit_log_max_size 5G 0 audit_log_prune_seconds 7days(604800) 0 audit_log_rotate_on_size 50M 0 ※ https://dev.mysql.com/doc/refman/8.0/en/audit-log-reference.html
  8. Copyright © 2023 HeatWavejp All Rights Reserved. 1. OCI リリースノートから主要リリース情報のピックアップ

    (2023/8月~) 監査プラグイン(Audit Plugin) • イベントを表形式で出力するコマンド例: SELECT @@server_uuid as server_uuid, ts, class, event, login_ip,login_user,connection_id, status,connection_type,_client_name,_client_version, command,sql_command,command_status FROM JSON_TABLE ( AUDIT_LOG_READ( '{ "start": {¥"timestamp¥": ¥"2023-08-16 15:33:37¥"}, ¥"max_array_length¥": 10 }' ), '$[*]' COLUMNS ( ts TIMESTAMP PATH '$.timestamp', class VARCHAR(20) PATH '$.class', event VARCHAR(80) PATH '$.event', login_ip VARCHAR(200) PATH '$.login.ip', login_user VARCHAR(200) PATH '$.login.user', connection_id VARCHAR(80) PATH '$.connection_id', status INT PATH '$.connection_data.status', connection_type VARCHAR(40) PATH '$.connection_data.connection_type', _client_name VARCHAR(80) PATH '$.connection_data.connection_attributes._client_name', _client_version VARCHAR(80) PATH '$.connection_data.connection_attributes._client_version', command VARCHAR(40) PATH '$.general_data.command', sql_command VARCHAR(40) PATH '$.general_data.sql_command', command_status VARCHAR(40) PATH '$.general_data.status' )) as audit_log; +(...)+------------------------+-------------+-------------+-----------+------------+----------------+(...) |(...)| ts | class | event | login_ip | login_user | connection_id |(...) +(...)+------------------------+-------------+-------------+-----------+------------+----------------+(...) (...) (...) |(...)| 2023-10-10 08:15:57 | connection | disconnect | 10.0.0.3 | admin | 489 |(...) |(...)| NULL | NULL | NULL | NULL | NULL | NULL |(...) +(...)+------------------------+------------+-------------+------------+------------+----------------+(...) ※ https://docs.oracle.com/en-us/iaas/mysql-database/doc/mysql-server.html#GUID-31305165-65B5-4A2A-9EE7-5CEC821C5CB9
  9. Copyright © 2023 HeatWavejp All Rights Reserved. 1. OCI リリースノートから主要リリース情報のピックアップ

    (2023/8月~) 読み取りレプリカの選択項目の追加 • 読み取りレプリカを作成する際に選択できる項目として以下が追加 ✓ シェイプ ✓ バージョン
  10. Copyright © 2023 HeatWavejp All Rights Reserved. 1. OCI リリースノートから主要リリース情報のピックアップ

    (2023/8月~) 読み取りレプリカの選択項目の追加 ✓ シェイプ • 読み取りレプリカのシェイプを自由に選択・変更することが可能 ※ ソースも含めて、4OCPU 以上ないと読み取りレプリカを作成できないので注意 ✓ バージョン • ソースと互換性のあるバージョンを自由に選択・変更することが可能