Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
MySQL 最新情報 MySQL9.4
Search
mikoma
October 18, 2025
Technology
0
39
MySQL 最新情報 MySQL9.4
2025/10/18 OSC Online/Fallでの登壇資料です。
イノベーションリリース、ロングタームリリースの違いとMySQL9.4までの新機能・変更点をご紹介しています。
mikoma
October 18, 2025
Tweet
Share
More Decks by mikoma
See All by mikoma
アプリ開発者のためのMySQLお役立ち機能マップ
ikomachi226
0
41
MySQL最新情報 MySQL9.2
ikomachi226
0
260
MySQL最新情報といま知っておきたいバージョンアップの基礎知識
ikomachi226
0
3.7k
MySQLのリリースモデルの変更点と最新アップデート
ikomachi226
0
390
MySQLで実践する機械学習 -HeatWave AutoML-
ikomachi226
0
480
MySQL Shellを使ってみよう!
ikomachi226
0
1.8k
Other Decks in Technology
See All in Technology
生成AI時代のPythonセキュリティとガバナンス
abenben
0
140
NLPコロキウム20251022_超効率化への挑戦: LLM 1bit量子化のロードマップ
yumaichikawa
3
540
20251027_マルチエージェントとは
almondo_event
1
460
QA業務を変える(!?)AIを併用した不具合分析の実践
ma2ri
0
160
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
0
380
アウトプットから始めるOSSコントリビューション 〜eslint-plugin-vueの場合〜 #vuefes
bengo4com
3
1.8k
ヘンリー会社紹介資料(エンジニア向け) / company deck for engineer
henryofficial
0
400
AI時代、“平均値”ではいられない
uhyo
8
2.6k
CREが作る自己解決サイクルSlackワークフローに組み込んだAIによる社内ヘルプデスク改革 #cre_meetup
bengo4com
0
350
プロダクト開発と社内データ活用での、BI×AIの現在地 / Data_Findy
sansan_randd
1
530
AI時代の開発を加速する組織づくり - ブログでは書けなかったリアル
hiro8ma
2
330
スタートアップの現場で実践しているテストマネジメント #jasst_kyushu
makky_tyuyan
0
140
Featured
See All Featured
Done Done
chrislema
185
16k
Visualization
eitanlees
149
16k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Rails Girls Zürich Keynote
gr2m
95
14k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
22k
Build The Right Thing And Hit Your Dates
maggiecrowley
38
2.9k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Building Better People: How to give real-time feedback that sticks.
wjessup
369
20k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
620
GitHub's CSS Performance
jonrohan
1032
470k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Typedesign – Prime Four
hannesfritz
42
2.8k
Transcript
MySQL 最新情報 生駒 眞知子/ Machiko Ikoma MySQL Principal Solution Engineer
日本オラクル株式会社 Oct 18, 2025 Open Source Conference 2025 Online/Fall
生駒 眞知子 (Machiko IKOMA) MySQL Principal Solution Engineer Experience Expertise
Location BIツール開発、オープンソース データベースに携わった後 日本オラクルに入社 MySQLのお客様・パートナーの 技術支援を担当 Tokyo 2 Copyright © 2025, Oracle and/or its affiliates 自己紹介
Copyright © 2025, Oracle and/or its affiliates 3 1995-2025 MySQLは30周年
多くの革新的な組織や業界がMySQLを活用 Copyright © 2025, Oracle and/or its affiliates 4 ソーシャルメディア
Eコマース テクノロジー 金融 製造
MySQLの道のり Copyright © 2025, Oracle and/or its affiliates 5 1995
2000 2005 2010 2015 2020 2025 MySQL AB (MySQL社)創業 最初のバージョンを公開 独自のオープンソース・ ライセンスからGPLに 商用版サブスクリプション ”MySQL Network” 発表 オラクルがMySQLの トランザクション・エンジン InnoDBの開発企業 Innobase OYを買収 サン・マイクロシステムズが MySQL ABを$1B (約11億円)で買収 オラクルがサン・マイクロシステムズを $7.4B (約81億円)で買収することを発表 欧州委員会の承認を経て 2010年1月27日に買収完了 MySQL部門も MySQL Global Business Unit として統合 MySQL社の 日本法人 MySQL 株式会社設立 MySQLのクラウド・ サービスの第1世代を リリース 高速クエリ処理 エンジンを搭載した MySQL HeatWave リリース MySQLの第2世代クラウド・サービス MySQL Database Serviceをリリース v3.23 v4.0 v5.1 v5.0 v5.5 v5.6 v5.7 v8.0 v8.2 v8.1 イノベーション・リリースと LTS(Long-term Support) リリースで構成される 新しいリリースモデルを発表 v9.0 v8.4 LTS v8.3 v9.3 v9.1 日本MySQLユーザ会 (MyNA)設立 v9.2 v9.4
MySQLサーバーは全て共通のソースコードのためハイブリッド構成も可能 MySQLを自社で運用管理 MySQL HeatWave • MySQLチームが100%開発・ 提供するクラウド・サービス • Amazon RDS
(MySQL)の 1/3以下のコスト • データ損失なし、自動フェイルオーバー の高可用性機能をマネージドサービス で提供 MySQL Operator for k8s • MySQL サーバーをKubernetes上に 構築し運用管理 柔軟なMySQLの利用方法 6 オンプレミスでのMySQL • バージョン選択や構成を 最も柔軟に選択可能 IaaS上でのMySQL • OCIのマーケットプレイスの イメージから簡単に環境構築 商用版MySQL • コミュニティ版に加え、サポートや セキュリティに優れた商用版も MySQLのマネージドサービス クラウドネイティブなMySQL いずれの利用方法でもMySQL開発チームと連携した 専門部隊によるサポートサービスをご利用いただけます※ Copyright © 2025, Oracle and/or its affiliates MySQL :: MySQL Operator for Kubernetes テクニカルアップデート ※コミュニティ版、フォークを除く
リリース形態の選択と定期的なパッチ適用 • バグ修正と新機能追加を行うリリース MySQL 8.1, 8.2, 8.3, 9.0, 9.1, 9.2,
9.3 … • リリース方針 バグ修正 セキュリティ・パッチ 新機能追加 機能やパラメータの非推奨化および削除 • リリースサイクル 3ヶ月毎 次バージョンのリリースでEOL • 本番運用想定のテスト済み • バグ修正のみを行うリリース MySQL 8.4 • リリース方針 バグ修正 セキュリティ・パッチ バージョン間の互換性重視 • リリースサイクル リリース後8年間サポート 複数のLTSリリースをサポート予定 • 本番運用想定のテスト済み 新しい MySQL のリリース形態 Copyright © 2025, Oracle and/or its affiliates 7 IR(イノベーション・リリース) LTS (Long-Term Support) リリース
2016 2017 2018 2019 2020 2021 2022 2023 2024 2025
2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 MySQL リリースとサポートのタイムライン 8 Copyright © 2025, Oracle and/or its affiliates MySQL 8.1 MySQL 8.4 LTS Premier Support Extended Support Sustaining Support MySQL 5.7 MySQL 8.0 Bug Fix series MySQL 9.7 Candidate for next LTS – Apr. 2026 IR … … IR MySQL 9.1
MySQL8.0の位置づけ ◼ 現在はバグ修正を提供(BugFix) ◼ 2026年4月にSustaining Supportのステータスに(新規のバグ修正、パッチリリースなし) ◼ 主要な進化 ✓ InnoDB
ClusterSet/ReplicaSet 標準サポート ✓ NoSQL、JSON、CTE、ウィンドウ関数、GIS、ユニコード(utf8mb4) ✓ MySQL Shell、Kubernetes Operator ✓ SHA256、AES256、多要素認証 9 Copyright © 2025, Oracle and/or its affiliates 8.0.11〜
MySQL 8.4LTSと9.x IR 概要 13 Copyright © 2025, Oracle and/or
its affiliates バグ修正と機能追加を別リリースに 高可用性 • Group Replication ✓ 一貫性維持方法のオプション追加 • レプリケーション ✓ 更新/参照処理の振り分け InnoDBデータストレージ • パラメータデフォルト値の改善 セキュリティ強化(※次ページ参照) • 認証プラグイン化 • 旧認証オプション(mysql_native_password)の廃止 生成AI関連 • ベクトル(VECTOR)データ型のサポート 開発効率化 • JavaScriptストアドプログラムのサポート 8.4 LTS 9.0 IR
mysql_native_password 削除 SHA-1アルゴリズムからの脱却 • caching_sha2_password がデフォルトの認証プラグインに変更(SHA-256) 14 Copyright © 2025,
Oracle and/or its affiliates https://blogs.oracle.com/mysql/post/mysql-90-its-time-to-abandon-the-weak-authentication-method MySQL8.0 MySQL8.4 LTS MySQL9.0 IR • mysql_native_passwordのプラグイン化 • mysql_native_password は非推奨 • デフォルトではプラグインとしてロードされないように変更 • mysql_native_password を削除
MySQL8.4LTS 主な変更点 ◼ 認証方式の見直し ✓ mysql_native_password がデフォルトで無効化 ◼ InnoDBパラメータの変更 ✓
デフォルト値が変更されているものがあり、旧構成から移行する際には注意 例) innodb_buffer_pool_instances, innodb_log_buffer_size,など ◼ レプリケーション/GTID機能の拡張 ✓ タグ付き GTID、SQL_AFTER_GTIDS + マルチスレッド適用対応、クローン柔軟化など、運用性を高める機能が 多数追加 ◼ 運用管理の強化 ✓ ログ出力拡充、Performance Schema 拡張、TLS 証明書検証強制設定、LDAP 認証/タイムアウト制御な ど、運用時の可視化・制御性を向上 16 Copyright © 2025, Oracle and/or its affiliates LTSリリース第一弾 MySQL 8.4
MySQL 8.4でのその他の機能追加や変更点 • 時間のかかるロールバック処理の進捗を確認可能に • エラーログにNoteレベルで出力 • まずER_IB_LONG_ROLLBACK_FULLとトランザク ション情報が出力されER_IB_LONG_ROLLBACK が続く
• クローンプラグインの対象バージョンの制限の緩和 • 8.4.0から8.4.14や8.0.51から8.0.37など 異なるポイントリリース間でのクローンが可能 • mysqldumpの--output-as-versionオプション • レプリケーション関連の下位互換のため8.2.0未満 か以上かの形式を指定して実行可能に • 権限の追加 • GRANT … FLUSH_PRIVILEGES - RELOAD権限の利用機会の削減 • OPTIMIZE_LOCAL_TABLE - OPTIMIZE LOCAL TABLE文とOPTIMIZE NO_WRITE_TO_BINLOG TABLE文の実行に使用 • レプリケーション関連のデフォルト値の変更 • source_retry_count = 10 (WL#15702 in 8.1) • binlog_transaction_dependency_track ing = WRITESET (WL#15861 in 8.3) • group_replication_exit_state_action = OFFLINE_MODE (WL#15713 in 8.4) • group_replication_consistency = BEFORE_ON_PRIMARY_FAILOVER (WL#15712 in 8.4) 17 Copyright © 2025, Oracle and/or its affiliates MySQL 8.4
近況アップデート 9.x イノベーションリリース 18 Copyright © 2025, Oracle and/or its
affiliates
次のLTSリリースに向けた第一歩 • JavaScriptストアドプログラムのサポート • Multilingual Engine (MLE)コンポーネント • ベクトル(VECTOR)データ型のサポート •
4バイト(単精度浮動)小数点数のリストの バイナリデータ • 次元の上限は16,383 デフォルト2048 • ベクトルデータ型専用の関数も追加 - DISTANCE(): 2つのベクトルの距離の演算 ※ HeatWave MySQLで利用可能 - STRING_TO_VECTOR(): ベクトルを表現する 文字列をVECTOR型に変換 - VECTOR_DIM(): ベクトルの項目数=次元を表示 - VECTOR_TO_STRING(): VECTOR型の バイナリデータをベクトルを表現する文字列に変換 • 外部キーの定義に暗黙的な表現を利用可能に • EXPLAINのJSON形式の出力を拡張 • JOIN対象列の情報を追加 • explain_json_format_version =2 • EXPLAIN ANALYZEのJSON形式の出力を 変数に格納可能に • イベントオブジェクト関連のDDLで プリペアドステートメントを利用可能に • パフォーマンススキーマのシステム変数関連のテーブル追加 • mysql_native_passwordプラグイン廃止 • MySQL 8.4でデフォルトOFF MySQL 9.0イノベーション・リリース Copyright © 2025, Oracle and/or its affiliates 19 https://dev.mysql.com/doc/refman/9.0/en/mysql-nutshell.html EE
JavaScriptストアドプログラムのサポート SQLでのストアドプログラムと同様に作成可能 利用もSQLでのストアドプログラムと同様 • 言語仕様はECMAScript 2023 Specificationに 準拠し、標準のライブラリ・オブジェクトをサポート Object, Function,
Math, Date, String • ストアドプログラムの引数や戻り値として MySQLのデータ型をサポート ※VECTOR型を除く • SQL文の実行結果をJavaScript内で利用可能 27.3.6 JavaScript SQL API • 主な制限事項 • Globalオブジェクトはサポートされているが、 スコープは各ストアドプログラム内に限定される • ファイルやネットワークへのアクセスは不可 • サードパーティーのライブラリのインポートは不可 • シングルスレッドでの処理 • 関数の再帰呼び出しは1,000回まで MySQL 9.0イノベーション・リリース Copyright © 2025, Oracle and/or its affiliates 20 mysql> CREATE FUNCTION gcd(a INT, b INT) -> RETURNS INT NO SQL LANGUAGE JAVASCRIPT AS -> $mle$ $> let x = Math.abs(a) $> let y = Math.abs(b) $> while(y) { $> var t = y $> y = x % y $> x = t $> } $> return x $> $mle$ -> ; Query OK, 0 rows affected (0.01 sec) mysql> SELECT gcd(75, 220), gcd(75, 225); +--------------+--------------+ | gcd(75, 220) | gcd(75, 225) | +--------------+--------------+ | 5 | 75 | +--------------+--------------+ 1 row in set (0.00 sec) EE
ベクトル(VECTOR)データ型と関数 ベクトルの類似度を演算するHeatWaveのみで利用可能なDISTANCE関数 • 2つのベクトルを引数とする • 第3引数には距離の演算方法を指定 COSINE, DOT, EUCLIDEAN ベクトルと文字列の相互の変換関数
MySQL 9.0イノベーション・リリース Copyright © 2025, Oracle and/or its affiliates 21 mysql> SELECT DISTANCE(STRING_TO_VECTOR("[1.01231, 2.0123123, 3.0123123, 4.01231231]"), STRING_TO_VECTOR("[1, 2, 3, 4]"), "COSINE"); +----------------------------------------------------------------------------------------------------------------------- + | DISTANCE(STRING_TO_VECTOR("[1.01231, 2.0123123, 3.0123123, 4.01231231]"), STRING_TO_VECTOR("[1, 2, 3, 4]"), "COSINE") | +----------------------------------------------------------------------------------------------------------------------- + | 0.0000016689300537109375 | +----------------------------------------------------------------------------------------------------------------------- + mysql> SELECT STRING_TO_VECTOR("[1.05, -17.8, 32]"); +---------------------------------------+ | STRING_TO_VECTOR("[1.05, -17.8, 32]") | +---------------------------------------+ | 0x6666863F66668EC100000042 | +---------------------------------------+ 1 row in set (0.00 sec) mysql> SELECT VECTOR_TO_STRING(0x00000040000040400000A0400000E040); +------------------------------------------------------+ | VECTOR_TO_STRING(0x00000040000040400000A0400000E040) | +------------------------------------------------------+ | [2.00000e+00,3.00000e+00,5.00000e+00,7.00000e+00] | +------------------------------------------------------+ 1 row in set (0.00 sec)
a SQL標準に準拠した外部キーの定義の暗黙的な表現のサポート 利用もSQLでのストアドプログラムと同様 MySQL 9.0イノベーション・リリース Copyright © 2025, Oracle and/or
its affiliates 22 # MySQL 8.4まででも利用可能な構文 CREATE TABLE shirt ( id SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, style ENUM('tee', 'polo', 'dress') NOT NULL, owner SMALLINT UNSIGNED NOT NULL, FOREIGN KEY (owner) REFERENCES person (id) ); # MySQL 9.0からサポートされる構文 # 参照先の列名の指定無し CREATE TABLE shirt ( id SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, style ENUM('tee', 'polo', 'dress') NOT NULL, owner SMALLINT UNSIGNED NOT NULL, FOREIGN KEY (owner) REFERENCES person ); # MySQL 9.0からサポートされる構文 # 明示的な外部キーの宣言無しでREFERENCESキーワードのみ CREATE TABLE shirt ( id SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, style ENUM('tee', 'polo', 'dress') NOT NULL, owner SMALLINT UNSIGNED NOT NULL REFERENCES person (id) ); # MySQL 9.0からサポートされる構文 # 明示的な外部キーの宣言無しでREFERENCESキーワードのみ # 参照先の列名の指定無し CREATE TABLE shirt ( id SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, style ENUM('tee', 'polo', 'dress') NOT NULL, owner SMALLINT UNSIGNED NOT NULL REFERENCES person ); # 親テーブルの定義 CREATE TABLE person ( id SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, name CHAR(60) NOT NULL );
Community Edition • CREATE DATABASE と DROP DATABASE のクラッシュセーフサポート •
アトミックなDDLをサポートするInnoDBや他のストレージエンジンに対応 • ファイルシステムやその他の問題によって発生する可能性のある問題を的確に処理 • CREATE VIEW文のIF NOT EXISTS句のサポート • 指定されたビューが存在しない場合、ビューを作成 • ビューが既に存在する場合、ビュー定義は変更されず警告を出力 • EXPLAINの改善 • 準結合(semijoin)が使用されている場合、EXPLAIN FORMAT=TREEの出力結果にその情報 を包含 MySQL Server 9.1で追加された主な機能 Copyright © 2025, Oracle and/or its affiliates 23 CE https://dev.mysql.com/doc/refman/9.1/en/mysql-nutshell.html
Enterprise Edition JavaScript ストアドプログラムのVECTOR型サポート • ベクトル値を入力引数、出力引数、プリペアドステートメントのbind()パラメータ、戻り値として使用で きるように強化 MySQL Server 9.1で追加された主な機能
Copyright © 2025, Oracle and/or its affiliates 24 EE SQLでのストアドプログラムと同様に作成可能 mysql> CREATE FUNCTION gcd(a INT, b INT) -> RETURNS INT NO SQL LANGUAGE JAVASCRIPT AS -> $mle$ $> let x = Math.abs(a) $> let y = Math.abs(b) $> while(y) { $> var t = y $> y = x % y $> x = t $> } $> return x $> $mle$ -> ; Query OK, 0 rows affected (0.01 sec) MySQL9.0 IR 利用もSQLでのストアドプログラムと同様 mysql> SELECT gcd(75, 220), gcd(75, 225); +--------------+--------------+ | gcd(75, 220) | gcd(75, 225) | +--------------+--------------+ | 5 | 75 | +--------------+--------------+ 1 row in set (0.00 sec)
Enterprise Edition アプライヤ統計の拡張 • レプリケーション・パイプライン全体から統計情報を収集することでMySQLの可観測性を強化 - replication_applier_metrics 指定されたレプリケーション・チャネルに対するアプライヤ・メトリクスの提供 - replication_applier_progress_by_worker
指定されたワーカーに対するメトリクスの提供 • DDLとDMLを区別する • レプリケーション・スループット(バイト/秒)の監視する • 完了したトランザクション、キューに入れられたトランザクション、進行中のトランザクション • レプリケーションの遅れを診断し、追いつくまでの時間を見積もる MySQL Server 9.1で追加された主な機能 Copyright © 2025, Oracle and/or its affiliates 25 EE
アプライヤ統計の拡張 MySQL Server 9.1で追加された主な機能 Copyright © 2025, Oracle and/or its
affiliates 26 EE replication_applier_metrics • レプリカにおけるトランザクション実行の監視 →レプリケーションのパフォーマンスに影響を 与える問題の特定
アプライヤ統計の拡張 MySQL Server 9.1で追加された主な機能 Copyright © 2025, Oracle and/or its
affiliates 27 EE replication_applier_progress_by_worker • 時間のかかるトランザクションの追跡 →別テーブルからGTIDを抽出・紐づけることで特定 トランザクションの進行状況、遅延の原因を特定 (replication_applier_status_by_worker)
MySQLの監視ツール 28 Copyright © 2024, Oracle and/or its affiliates Oracle
Enterprise Manager for MySQL MySQL Enterprise Monitorとおなじく Enterprise EditionおよびCarrier Grade Editionのご契約をお持ちのお客様はそのまま 利用可能 OCI Database Management Service HeatWaveと合わせて、オンプレミスやIaaS上の MySQLサーバーを監視可能 EE
Enterprise Edition OpenTelemetryサポート機能 - OpenTelemetry ログのサポート • MySQLサーバーからテレメトリーログをエクスポート • OpenTelemetry
標準をサポートするコレクターとバックエンドに送信 • ログはOTLP HTTPプロトコルによるプッシュモデルを使用して、単一のエンドポイントにエクスポート可能 • ネットワーク暗号化はTLS経由で提供 • ログ圧縮をサポート • 本番環境での運用時トラブルシューティング • MySQLサーバーからログイベントを収集 • ログデータを OpenTelemetry OTLPフォーマットに整形 • OTLP ログを外部の OpenTelemetry Collector プロセスに送信可能 MySQL Server 9.1で追加された主な機能 Copyright © 2025, Oracle and/or its affiliates 29 EE
Enterprise Edition OpenID Connectサポート • MySQL 9.1 のConnector、MySQL Router、クライアントは、OpenID Connect
をサポートする 外部の認証サーバ(IAM)によって実行された認証に基づいて、ユーザの ID を提供することが可能 <OpenID プロバイダの例> Oracle • Oracle Identity Cloud • Oracle Access Management Microsoft • Microsoft Entra ID (formerly Azure Active Directory) • ADFS on Windows Server など プロバイダリスト : https://openid.net/certification/ MySQL Server 9.1で追加された主な機能 Copyright © 2025, Oracle and/or its affiliates 30 EE
• 空間データの権限まわりの改善 • この権限により、以下のコマンドを用いて空間参照系 (SRS) を作成・変更・削除が可能 - CREATE SPATIAL REFERENCE
SYSTEM - CREATE OR REPLACE SPATIAL REFERENCE SYSTEM - DROP SPATIAL REFERENCE SYSTEM • これまではSUPER 権限が必要でしたが、9.2以降は必要な権限の範囲が限定される • 暗号化関連処理のパフォーマンス向上(MD5(),SHA2()関数) • Open SSL3.xのAPIを採用 • コネクション制御プラグインをコンポーネント化 ー component_connection_control • 従来のconnection_controlプラグインは非推奨となり、将来的に削除予定 MySQL Server 9.2で追加された主な機能と変更点 Copyright © 2025, Oracle and/or its affiliates 31 Community Edition CE https://dev.mysql.com/doc/refman/9.2/en/mysql-nutshell.html
• Group Replication改善 • レプリカの遅延やリソース逼迫に起因する問題を自動で特定・緩和する仕組みの追加 • グループレプリケーション構成内の下記問題への対処を改善 - リソース枯渇の防止: リソース不足が発生しているメンバーを自動的にグループから除外し、グループ全体への影響を回避
- 遅延サーバの検知と排除: セカンダリサーバの適用パフォーマンス(遅延や過度のスワップなど)を継続的に監視し、検知・除外 - リソース使用量の閾値設定: CPUやメモリなどの重要なリソース使用量の閾値設定が可能となり、超えた場合は適切な対処を実行 - フォールトトレランス: 問題のあるメンバーがいても動作を継続し、サービス停止時間を最小限に抑制 - 再起動メンバーの隔離期間: 再起動したメンバーには一定の隔離期間を設け、メンバー除外の発生前に同期を完了させる - グレースフルな障害処理の完了: 障害発生時のサービスへの影響を抑えつつ、問題のあるメンバーを自動で検出・除外 既存の「自動リジョイン機構」と組み合わせることで自己修復を実現 • 自己プロビジョニングとリジョイン: 除外されたメンバーが自動で自己プロビジョニングし、再びグループに参加 ダウンタイムを最小化し、グループ全体の可用性を維持 • Option Tracker改善 • バイナリログ、レプリケーション、グループレプリケーションが対象に追加 MySQL Server 9.2で追加された主な機能と変更点 Copyright © 2025, Oracle and/or its affiliates 32 Enterprise Edition EE
• JavaScprit ストアドプログラム • サードパーティ製ライブラリのサポート - サードパーティ製のJavaScriptライブラリをデータベース内に直接格納することが可能 - ストアドルーチンで外部ライブラリを利用する際の手間を軽減 -
CREATE LIBRARYステートメントでライブラリを定義可能 • ENUM および SET データ型のサポート • MySQL Connectors C++, ODBC ーWebAuthn認証デバイスの選択オプション追加 • WebAuthn 仕様によって、Windows Helloを利用した認証が可能 • Windows環境で利用するWebAuthn認証デバイス(指紋認証やYubiKey)を明示的に選択可能 MySQL Server 9.2で追加された主な機能と変更点 Copyright © 2025, Oracle and/or its affiliates 33 Enterprise Edition EE
Community Edition • パラメタ削除 • innodb_log_file_size • innodb_log_files_in_group • innodb_undo_tablespaces
• コンテナ環境での起動検知 • デフォルトの InnoDB 各種設定がサイズ変更になり、コンテナでの過剰確保が回避される • オプティマイザ最適化強化:>ANY, <=ALL など 全比較演算子を派生表 JOIN へ変換 • mysqldumpのバックアップポリシーに、 --users でアカウント設定がダンプできる仕様 一部のアカウントに限定するなどの設定も可能 • Enterprise Linux 10 対応 • 9.3シリーズ間のダウングレード不可(ex. 9.3.1->9.3.0) MySQL Server 9.3での追加・変更 Copyright © 2025, Oracle and/or its affiliates 34 CE https://dev.mysql.com/doc/refman/9.3/en/mysql-nutshell.html
Enterprise Edition • JavaScript ストアドプログラムの型変換改善 • 従来:DECIMAL (10進数) がNumber型に変換 •
今回:デフォルトでは文字列型に変換されるように変更 - 型が変わることによるまるめ誤差などが発生するのを避けるため、情報が落ちないように文字列型で 受け渡し、開発者が明示的に必要に応じて変更可能 • Group Replication • 新コンポーネント Group Replication Primary Election導入 - 最新トランザクションの反映数が多いセカンダリノードを優先的にプライマリ昇格 - コンポーネントを全ノードにインストールして変数を有効化 MySQL Server 9.3での追加・変更 Copyright © 2025, Oracle and/or its affiliates 35 EE
MySQL Server 9.4での追加・変更 • JavaScriptプログラムでのWebAssemblyライブラリサポート • CREATE LIBRARY … LANGUAGE
WASM を使って WASM で書かれたライブラリをロード可能 • JSONデュアリティビューのサポート • CREATE JSON DUALITY VIEW/ALTER JSON DUALITY VIEWのサポート • データを直接JSONとして取得可能 • JSONでのレスポンス統一 • フロント側からはJSONオブジェクトのみを参照 • JSONビュー側から基のテーブルも更新可能 (EEのみ) • MySQL Enterprise Firewallのコンポーネント化 • プラグインからコンポーネントに • init() メソッドによるコンポーネントのサービス登録を制御 36 Copyright © 2025, Oracle and/or its affiliates EE EE https://dev.mysql.com/doc/refman/9.4/en/mysql-nutshell.html
JSONデュアリティビューのサポート ◼ CREATE JSON DUALITY VIEW/ALTER JSON DUALITY VIEWのサポート ◼
データを直接JSONとして取得可能 ◼ JSONでのレスポンス統一 ◼ フロント側からはJSONオブジェクトのみを参照 ◼ JSONビュー側から元のテーブルも更新可能 (EEのみ) 37 Copyright © 2025, Oracle and/or its affiliates MySQL 9.4 IR〜 https://dev.mysql.com/doc/refman/9.4/en/json-duality-views.html CREATE JSON DUALITY VIEW view_name AS SELECT JSON_DUALITY_OBJECT( '_id' : column1, 'key2' : column2, 'key3' : column3 ) FROM table_name; EE
MySQL AI 38 Copyright © 2025, Oracle and/or its affiliates
| In-database LLMs Documents in file system GenAI MySQL Studio Similarity search AutoML Redefining Built-In Intelligence お問い合わせ先:
[email protected]
MySQL for Developers License 39 Copyright © 2025, Oracle and/or
its affiliates. MySQL Enterprise Editionのフル機能の試用が可能 • Enterprise Server • Backup • Router • Shell • Connectors • JavaScript 学習、開発用途であれば、MySQL Enterprise Editionをダウンロードして無償で使用可能に!! Download Now https://www.oracle.com/mysql/technologies/mysql-enterprise-edition-downloads.html
Appendix
MySQLホームページ http://www.mysql.com/jp MySQL イベント http://www.mysql.com/jp/news-and-events/ MySQLニュースレター 英語版&日本語版(月刊) https://www.mysql.com/jp/news-and-events/newsletter/ MySQL Twitter
日本語公式アカウント @mysql_jp MySQLの最新情報配信 41 Copyright © 2025, Oracle and/or its affiliates
MySQL コミュニティ Copyright © 2025, Oracle and/or its affiliates 42
▪ MySQL コミュニティの紹介 ▪ MySQL への貢献 ▪ Oracle Contribution Agreement (OCA) ▪ MySQL無償認証制度
MySQL コミュニティの紹介 Copyright © 2025, Oracle and/or its affiliates 43
• MySQL コミュニティへの貢献プロセスの運営 • MySQL ユーザーグループへの支援 https://dev.mysql.com/community/mug/ • 全世界でのサードパーティによるカンファレンスやイベントへの支援や参加 https://dev.mysql.com/community/ • 教育ビデオの作成 • MySQL 短編動画 (MySQL Shorts) • MySQL 入門編シリーズ (MySQL 101 for Biginners) • https://www.youtube.com/@mysql • MySQL RockStar プログラム • MySQLの利用促進に最も精力的に取り組んだ MySQL コミュニティ・メンバーへの表彰 • 第1回: https://blogs.oracle.com/mysql/post/mysql-rockstars-2022 • MySQL ACE プログラム • MySQL プロジェクトでの ACE プログラムの運営 • https://ace.oracle.com/pls/apex/ace_program/r/oracle-aces/home
MySQL への貢献 • MySQL オープンソースプロジェクトのコントリビューターコミュニティへの参加: https://forums.oracle.com/ords/apexds/post/contributing-code-to-mysql-8037 • コントリビュータになるために持つべきこと • MySQL
の機能を変更/修正したい、あるいは新しい機能を追加したいといった要望 • MySQL ソースコードのダウンロード http://dev.mysql.com/downloads/ • bugs.mysql.com のアカウント http://bugs.mysql.com or • 有効な GitHub アカウント https://github.com • Oracle Contribution Agreement (OCA) への署名 https://oca.opensource.oracle.com/ • OCAは、コントリビューターとオラクルの両方を法的攻撃から保護する短い法的契約です。OCAに署名することにより、コントリビュー ターはオラクルがコントリビューターのコードをオラクル・ソフトウェアで使用することが法的に許可されていること、およびコントリビューター の知る限りにおいて、そのコードに特許的な問題がないことに同意することになります。 Copyright © 2025, Oracle and/or its affiliates 44
連絡先 • MySQL コミュニティとのコンタクト先一覧: • MySQL コミュニティページ, https://dev.mysql.com/community/ • MySQL
Slack, https://mysqlcommunity.slack.com • The Oracle MySQL ブログ, https://blogs.oracle.com/mysql/ • The Oracle MySQL Japan ブログ, https://blogs.oracle.com/mysql-jp/ • Planet MySQL, https://planet.mysql.com/ • LinkedIn, https://www.linkedin.com/groups/60715/ • ブログ, https://lefred.be/ • MySQL フォーラム, http://lists.mysql.com/ • ディスカッションフォーラム, http://forums.mysql.com Copyright © 2025, Oracle and/or its affiliates 45
Thank you Copyright © 2025, Oracle and/or its affiliates 46
None