オンプレミス(外部)のMySQL DBシステムを監視するOracle Cloud Infrastructure(OCI)Database ManagementおよびOps Insightsサービスの提供開始を発表します!

今日、効率的なデータベース管理は、パフォーマンス、信頼性、拡張性の高いアプリケーションを提供するために不可欠です。OCI のDatabase Managementサービスは、MySQL Enterprise Monitor (MEM) と Enterprise Manager for MySQL の機能を導入し、クラウド・ネイティブな包括的なデータベース監視ソリューションを提供します。このサービスで提供される高度な診断とパフォーマンス管理ツールにより、リソースのボトルネックの迅速な特定と解決、SQLパフォーマンスの問題のトラブルシューティング、データベースシステムの最適なパフォーマンスの確保が可能になります。 詳細なCPU、メモリ、ストレージの使用率から詳細なSQLパフォーマンス・メトリクスまで、管理者はアプリケーションのパフォーマンスに影響を与える前に問題を検出し、解決することができます。

外部のMySQLデータベースに対するモニタリング設定を簡単な導入ステップで実施でき、ステータスやパフォーマンスをリアルタイムに把握することができます。この強力なソリューションにより、潜在的な問題を未然に防ぎ、信頼性と即応性の高いデータベース環境をサポートします。OCI Database ManagementおよびOCI Ops Insightsサービスは、外部MySQLデータベースの監視を簡素化し、詳細できめ細かなインサイトを提供し、インフラリソースの管理作業の負担を軽減する高度な機能を提供します。さらに、クラウドネイティブのマネージドソリューションであるため、これらのサービスを利用することで、監視ソリューション自体を保守する必要がなくなります。

Database Managementサービスの機能概要

OCIのDatabase Managementサービスは、MySQLデータベースの管理と監視を簡素化する統合されたインタフェースを提供します。主な機能は以下の通りです:

  • OCIで複数の外部およびHeatWave MySQL DBシステムを管理・監視するためのシームレスなインターフェイスの提供
  • すべてのMySQLデータベースのCPU、メモリ、ストレージ使用率、およびシステム全体の状態監視
  • 特定のMySQLデータベースにアラートを設定し、パフォーマンスのしきい値を追跡してタイムリーに通知
  • フリート全体の外部MySQLデータベースの主要なパフォーマンスや構成値の指標モニタリング
  • SQLステートメントのレイテンシ、ディスク・スループット、データベース接続の可視化
  • パフォーマンス・ハブによりMySQLデータベース全体の根本的な問題を特定し、SQLパフォーマンスの問題を迅速に解決

OCIにおける外部MySQLデータベースとHeatWaveのフリート監視

OCI Database Managementサービスは、OCI上のMySQLデータベース・インスタンスに以下のようなフリート監視機能を提供します:

  • Oracle Cloud Infrastructure上のフリート内の複数の外部MySQLデータベースおよびHeatWave MySQL DBシステムを一括監視
  • フリート全体のCPU、メモリ、ストレージの割り当てと使用率の概要を見える化
  • 重大度別にアラームを分類し、重要な問題の優先順位付けが可能
  • フリート内のすべてのMySQL DBシステムを一覧表示し、監視ステータス、デプロイメント、消費リソースの上位(CPU、ストレージ、メモリ)、平均SQLステートメントレイテンシをハイライト表示し、さらに特定のデータベースまでドリルダウンして簡単に追跡・管理が可能
Screenshot of the fleet summary
図1:  HeatWaveと外部MySQLデータベースのフリート

外部MySQLデータベースの監視

フリートサマリーページから外部のMySQLデータベースを選択してドリルダウンし、サマリーセクションで以下の主要メトリクスを監視します:

  • MySQL データベースの監視ステータス
  • リソース使用率(CPU、メモリ、ディスク使用率)
  • データベース接続
  • SQLステートメントの待ち時間
  • ディスクIOとスループット
  • アラームの可視化

Screenshot of summary page

Screenshot of the rows metrics
図2:  [サマリー]ページにおけるMySQLデータベース表示

さらに、MySQL DB システムのパフォーマンスをさらに最適化するために、メニューの左ペインにある[リソース]メニューから、さまざまなメトリクスや現在の構成変数を確認・設定することができます。

メトリクス

メトリクス・セクションでは、MySQLデータベース監視に不可欠なさまざまなメトリクスを監視して、パフォーマンスに関する問題を事前に特定して解決することができます。このセクションには、[サマリ]セクションのチャートだけでなく、より詳細な分析のための追加メトリクスも含まれています。[チャートの選択]ドロップダウン・リストから別のチャートを選択して、より詳細な調査のためにさまざまな指標を調べることができます。

Screenshot of all metrics
図3:  MySQLデータベースに対する[メトリクス]表示

MySQL接続の監視による接続問題の特定と対処

MySQLデータベースでパフォーマンスの問題が発生した場合、一般的に調査されるのが接続数です。MySQL の 接続数 メトリックを監視することで、潜在的なボトルネック、リソースの枯渇、接続リークを明らかにすることができます。

それでは、新規接続時の問題を分析し、効果的に対処するために必要な改善手順を探ってみましょう。

問題例

新規接続の数が多い場合、以下のことが考えられます:

  • あまりにも多数のクライアント・アプリケーションが接続を切断せずに維持されており、「コネクション・リーク 」が発生している。
  • アプリケーションのトラフィックの増加またはコネクションプールの設定ミスによりデータベースを圧迫している。
  • コネクションプールの制限が不十分なため、MySQL サーバが受信要求を効率的に処理できない。

    分析
    コネクションプールの設定ミス: Max_used_connections が常に高いが制限内である場合、アプリケーションのコネクション・プーリングの構成が最適でない可能性がある。
    対応手順
    max_connectionsの値を増やす: トラフィックの急増によってサーバに負荷がかかっている場合は、MySQLのmax_connectionsの上限値を一時的に上げます。ただし、これは短期的な解決策であり、他の最適化とあわせて検討する必要があります。
  • thread_cache_sizeを最適化する: thread_cache_sizeパラメータを調整することによりスレッド生成時のオーバーヘッドを削減し、コネクション・プーリングの効率を向上させることができます。
  • 接続リークの修正: 接続後にクローズされないアプリケーション・レベルの接続リークを特定して解決します。これは、アプリケーション・コードを監査して接続が適切に閉じられるようにするか、アプリケーション層の接続を追跡する APM のようなツールを利用することで行うことができます。

MySQLデータベース構成変数の監視

[構成変数]セクションでは、MySQLデータベースで現在使用されている構成変数を監視および管理できます。これらの変数は MySQLデータベースの動作を定義するユーザー/システム/初期化/サービス固有の変数です。

前述の[メトリクス]セクションで、新規接続チャート(コネクション・メトリック)と、新規接続に関連する問題を軽減する可能性のある対処について触れました。対処方法の1つとして、max_connectionsやthread_cache_sizeのようなシステム変数の値を変更することが挙げられます。

[構成変数]セクションでは、必要に応じてこれらの変数を表示および編集できます。左ペインのフィルタを使用して、特定の構成変数を素早く検索することができます。

Screenshot of configuration variables section on the MySQL DB system details page
図4:  MySQLデータベースの構成変数セクション

MySQLデータベースのアラーム定義

[アラーム]セクションでは、事前に定義されたルール、しきい値、および条件を使用して Oracle が推奨するアラーム設定を簡単に実装でき、データベースを効率的に監視することができます。これらの設定は、潜在的な問題や推奨設定(ゴールドスタンダード)からの逸脱を検出するのに役立ちます。アラームをプロアクティブに監視することで、MySQL DB システムを効率的かつ安全に、オラクルのデータベース管理のベストプラクティスに沿って実行することができます。

Screenshot of alarm definitions section on the MySQL database details page
図5:  MySQLデータベースの[アラーム]セクション

MySQLデータベース用のパフォーマンス・ハブ

パフォーマンス・ハブは、クエリ・パフォーマンスを監視することで、データベース・アプリケーションのパフォーマンスを迅速に向上させる強力なツールを開発者およびDBAに提供します。パフォーマンスの高いSQLコードと非効率なSQLコードの両方を詳細にモニタリングし、特定のパフォーマンス問題を特定して対処することができます。パフォーマンス・ハブを使用することで開発者は開発中システムおよび本番システムでSQLコードを最適化し、よりスムーズで高速な運用を実現できます

MySQLデータベース用のパフォーマンス・ハブの主な機能は以下のとおりです:

  • アプリケーションのパフォーマンスに影響を与えるような高コストでリソースを大量に消費するクエリを特定
  • 高度な検索オプションを使用してフルテーブルスキャンや非効率なインデックスなど、特定のクエリの問題をピンポイントで特定
  • クエリ実行状態を視覚化し、クエリ統計以外のパフォーマンスに関する深い洞察を得る
  • 最適化後の結果を分析し、クエリ実行の改善状態の確認

Screenshot of performance hub

Screenshot of Performance Hub for MySQL DB systems
図6: MySQLデータベース用のパフォーマンス・ハブ

Ops Insightsサービスの機能概要とメリット

  • 全てのMySQLデータベースおよびデータベース/ホストのリソース使用状況の分析
  • 過去の傾向に基づいた将来のリソース需要を予測
  • 単一データベースまたは複数のデータベースにおけるSQLパフォーマンスの時系列比較
  • 全てのデータベースにおけるSQLパフォーマンス・パターンおよびトレンドの特定
  • MySQLデータ・オブジェクトを使用してSQL クエリをカスタムし、ダッシュボード・フレームワークを使用してデータベース・パフォーマンスの調査可能
Screenshot of the Ops Insights summary
図7: Ops Insightsのデータベース分析ダッシュボード

試してみましょう!

OCIの Database Management とOps Insights サービスは、オンプレミス(外部)のMySQLデータベースをサポートするように設計されており、監視、管理、最適化のための機能を提供します。このサービスはMySQL 8.x以降のバージョンをサポートしており、最新機能との互換性を確保しています。ユーザーフレンドリーなインターフェイス、高度な機能、プロアクティブなモニタリングにより、MySQLデータベースを最高のパフォーマンスで稼働させることができます。

今すぐDatabase Management と Ops InsightsサービスによるMySQLデータベースの効率化をぜひお試しください。

こちらの ビデオシリーズ をご覧いただくと、Database ManagementとOps Insights の理解を深めていただけます。

Database Management と Ops Insightsは、OCIコンソールの[監視と管理]メニューからアクセスできます。コンソール、CLI、およびREST APIからこのサービスにアクセスでき、すべてのOCIコマーシャル・リージョンで利用可能です。米国およびその他の政府向けリージョンでの詳細および利用可否については、OCIサービスの利用可能ページをご確認ください。米国およびその他の政府リージョンでの詳細および利用可否についてはこちらの ページをご確認ください。

この機能の詳細と使用方法については、Database ManagementOps Insightsのドキュメントを参照してください。

参考資料: