MySQL は、構造化クエリ言語 (SQL) をベースとするオープンソースのリレーショナル データベース管理システムです。 MySQL は、データウェアハウス、eコマース、およびロギング アプリケーションなど、さまざまなユースケースで開発チームによって使用されています。 しかし、MySQLは柔軟性、信頼性、拡張性に優れているため、最も一般的に使用されているのはWebデータベースです。 一方、SQL Server は、Microsoft が最初に開発した商用リレーショナル データベース管理システムです。 MySQL と同様に、SQL Server は Linux、Microsoft Windows、および Windows サーバー システムを含む多くのプラットフォームをサポートします。 SQL Serverは、Linux、Microsoft Windows、Windowsサーバーシステムなど多くのプラットフォームに対応しています。最も一般的なSQL Serverは、開発者が.NetアプリケーションやWindowsプロジェクトで使用します。 商用製品であるため、SQL Server にはより幅広いサポート・コミュニティがあります。

このガイドでは、パフォーマンス・チューニングの取り組みに役立ついくつかの指標について説明します。 また、私が最もお勧めするソリューションである SolarWinds® Database Performance Analyzer を含め、市場にある最高の SQL Server および MySQL ツールについても説明します。

mysql performance

Monitoring SQL and MySQL Performance Best Practices
Best MySQL and SQL Server Performance Tuning Tools
データベース監視は必須である。 正しく、継続的に行い、利益を得る

Monitoring SQL and MySQL Performance Best Practices

SQL パフォーマンスの監視で最も重要なことは、どのメトリクスとアラートを監視する必要があるかについて熟考して決定することです。 これは部分的には組織や業界に依存しますが、一般的には次のプロセスを監視することをお勧めします。

  • Required process running
  • Common failure points
  • Resource utilization
  • Query executions (failures and completions)

これらのプロセスの監視に加えて、MySQL ビューパフォーマンスの健全性に関する特定のメトリックも監視したいところです。 以下は、手始めとして良い場所です:

  • Uptime: サーバーがリクエストに応答するのにかかる秒数。
  • Threads connected: 現在サーバーに接続しているクライアントの数です。
  • 最大使用接続数。
  • Aborted connections: サーバーが起動してから行った接続数です。 接続に失敗した回数です。 7515>

開発チームは、データベースが基本的なタスクを満たしていることを確認するために、SQL クエリのメトリクスを監視していることも確認する必要があります。 いくつかの例は次のとおりです:

  • 質問。
  • Queries: クライアントから送信されたステートメントの数。 ストアドプロシージャを含む実行された文の数。
  • 読み書き要求。

SQL Server または MySQL のパフォーマンス チューニングを実施するために収集するその他の重要なメトリックには、典型的な SQL エラーが含まれます。 これらは、常に目を光らせておくべき頻繁な障害ポイントです。

  • Errors:
  • Log files size: すべてのファイルが適切にローテーションされているかどうか、ログストリームを検査します。 そうでない場合、サーバーのボトルネックになる可能性があります。
  • 削除されたログファイル。 ログファイルが削除された後、ファイル記述子が閉じられていることを確認します。
  • バックアップスペース:ログファイルが削除された後、ファイル記述子が閉じられていることを確認します。

Best MySQL and SQL Server Performance Tuning Tools

Attempting to capture the above metrics is difficult without the right tools.これは、適切なツールなしでは難しいことです。 以下のプログラムは、MySQL、SQL Server、またはその他のリレーショナル データベースを使用しているかどうかにかかわらず、SQL データベースをリアルタイムで監視するための最適なツールの一部です。 これは、データベース管理者、ITチーム、およびアプリケーション開発者のための優れたソリューションです。 リアルタイム監視をサポートし、SQLデータベースインスタンスを分析して、ボトルネックの軽減、サービスの向上、コスト削減を実現します。 両方のタイプのデータベースを使用している場合、MySQL と SQL Server のパフォーマンス指標を簡単に比較できます。

このデータベース パフォーマンス監視用のクロス プラットフォーム ソリューションは、クラウドとオンプレミスの両方のデータベースで動作するので、さまざまな組織にとって理想的な選択となります。 機械学習を利用した異常検知や詳細な待機時間分析など、役立つ機能を多数備えています。 これらの機能により、IT 管理者は平均解決時間を改善し、データベース・パフォーマンスの問題に迅速に対処できます。

最高の機能の 1 つは、データウェアハウス・リポジトリ (MySQL データベースに直接設定可能) で応答時間とサーバー統計を追跡し、IT チームに MySQL パフォーマンスのリアルタイムと履歴データの両方を提供することです。 これらの洞察により、DBAはサーバーインフラをよりよく理解し、重要な問題に対処することができます。

さらに、SolarWinds DPAは非常に使いやすくなっています。 カスタムアラートの設定、カスタムメトリクスの作成、グラフィカルなパフォーマンスレポートのスケジュール設定、関連するITチームへの電子メールによる配信も可能です。

PROS:

  • クラウドとオンプレミスの両方でさまざまなデータベースをサポートします。
  • 使いやすく、カスタムアラートやメトリクスなど柔軟性があります。
  • AIを活用した異常検知を使用し、多くの問題の平均解決時間を改善します。
  1. Idera Diagnostic Manager

Idera SQL Diagnostic Manager

Idera Diagnostic managerでは物理および仮想環境におけるSQLデータベースに対してITチームのパフォーマンス監視を提供します。 パフォーマンス統計と主要なメトリックを追跡し、DBAがVMとデータベースをよりよく管理できるようにアラートを送信するように設定することができます。 また、ITチームは、SQL DBMSの推奨事項を提供しながら、トランザクションのSQLモニタリングとともに、クエリのプロアクティブなモニタリングを実行することができます。 ディスク容量のような指標を簡単に分析したり、現在の警告やアラートでサーバーの概要を把握したりすることができます。 全体として、これは SQL データベースを監視するための便利で柔軟なツールです。

PROS:

  • Idera はプロアクティブなクエリー監視と推奨事項を提供します。
  • セキュリティ脆弱性や構成の問題、データベース可用性と健康についての洞察を提供します。
  • シンプルなチャートにより主要メトリクスとサーバー警告をすばやく視覚化できます。
  1. SolarWinds Database Performance Monitor

SolarWinds-DPM

SolarWinds Database Performance Monitor(DPM)はSaaS監視ソリューションで、従来のアプリケーションを購入したり保守する必要がないので、それを始める際の摩擦が劇的に少なくなっています。

このツールは、データベースをローカル、クラウド、ハイブリッドで監視でき、オープンソースとNoSQLデータベースにフォーカスしており、MySQLだけでなくPostgreSQLやRedisも含まれています。 DPMは、24時間365日のリアルタイム監視を提供し、多数のメトリクスを追跡し、ユーザーフレンドリーで強力なダッシュボードを使用してそれらを表示します。 サポートされているメトリクスには次のようなものがあります:

  • MTTD
  • MTTR
  • Deploy frequency
  • Availability
  • Reduced failed deploys

DPM は真剣にセキュリティを考慮して、SOC2 と GDPR に完全に準拠しています。

PROS:

  • クラウドベースのソリューションであるため、開始と使用に関する摩擦が少ない。
  • 膨大な数のメトリクスに対する24時間365日のリアルタイム監視。
  • 柔軟で使いやすいダッシュボード。
  1. SQL Power Tools

SQL Power Tools

DBA にとってもう一つの良い選択肢は SQL Power Tools であろう。 ゼロ インパクト」ソリューションと称されるこのエージェントレス データベース監視ソリューションにより、IT チームは待機時間やブロックからディスク使用量やインデックス断片化まで、サーバー インフラの 120 以上の異なるメトリックにアクセスすることができます。 30日間のトレンドを表示したり、アラートを設定して即座に認識することができます。 オーバーヘッドが少なく、信頼できる軽量な製品ですが、大規模な組織では、ニーズに合わせて拡張するのに苦労するかもしれません。

PROS:

  • 摩擦が少ない「ゼロインパクト ソリューション」
  • 多数のメトリクスでサーバーインフラ全体を監視することが可能です。
  • Lightweight and reliable tool suited for simpler scenarios.
  1. Percona Monitoring and Management Tool

percona-pmm-postgres-working-Postgres_exporter

The Percona Monitoring and Management Tool is a free, open-source solution admins can use to monitor and manage their MySQL databases.そのようなツールは、MySQL データベースを監視し管理するために、無料のオープンソースのソリューションです。 Percona は、既存の IT システムに完全に組み込むことができますので、管理者はソリューションが安全で信頼できる設定で実行されていることを確認することができます。 さらに、Percona はクエリをメトリクスにマッピングすることができるため、シスアドは MySQL のパフォーマンスを最適化するためのより良い判断を下すことができます。

オープンソースのため、サポートは限定的で、ITチームはエンタープライズクラスのソリューションに期待されるより進んだ機能のいくつかを失う可能性があります。

PROS:

  • Map queries against metrics, allowing adminins to take queries into account when optimizing MySQL performance.

    MySQL パフォーマンスを最適化するために、MySQL は多くの組織にとって信頼できる選択肢となります。

  1. AppDynamics

appdynamics-mysql

このエンタープライズグレード MySQL ツールには、多くの大企業にとって優れたソリューションとなる包括的な機能が多数用意されています。 たとえば、IT チームに MySQL データベースのパフォーマンスと健全性に関するリアルタイムな洞察を提供し、効率的に問題を特定しトラブルシューティングすることができます。 さらに、AppDynamicsは、ITチームがMySQL環境の健全なパフォーマンス標準と見なすメトリックのベースラインを設定することを可能にします。 このツールは、ベースラインに対して新しく生成されたメトリックを収集し表示するので、管理者は何が健全な動作であるかをよりよく理解しながらシステムを監視することができます。 ライト プランは無料で使用できますが、提供される機能は限られており、データの保持はほぼ皆無です。

PROS:

  • MySQL パフォーマンスと健全性指標に対するリアルタイムの洞察を提供します。
  • ユーザーは健全なパフォーマンスのベースラインを定義し、これらのベースラインに基づいて新しい指標を定義することができます。 正しく、継続的に行い、利益を得る

    データベースは、事実上あらゆる技術的努力の中心的存在です。 しかし、一部の企業では、データベースに多くのリソースを割いているにもかかわらず、その監視に関心がないようです。 それは、投資や特に高価なものに対するリターンを知りたくないのと同じようなものなので、不可解です。 前者が巨大企業によって開発されたエンタープライズ製品であるのに対し、後者は商用ライセンスでも利用可能であるにもかかわらず、フリーでオープンソースのツールです。 広く知られている 2 つのリレーショナル データベースであるため、MySQL と SQL Server を対象としたデータベース監視ソリューションが数多く提供されています。

    mysql performance

    これまで取り上げたツールにはすべてメリットがありますが、私の一番のおすすめは、SolarWinds Database Performance Analyzer です。 先に述べたように、DPA は比類のない監視と分析機能を備えています。

    SolarWinds の他のツールである Database Performance Monitor も栄誉ある賞を受賞しました。 DPMはクラウドベースのソリューションで、ダウンロードやメンテナンス、プロビジョニングは必要ありません。 アップグレードは自動的に行われます。 DPMは、特にオープンソースのデータベースを対象としたSaaSソリューションであるため、MySQLの監視には最適です。