MySQL は、さまざまな分野で広く使用されている非常に人気のあるリレーショナル データベース管理システムです。実際のアプリケーション シナリオでは、さまざまなアプリケーションのニーズを満たすために、同じサーバー上で複数の MySQL インスタンスを同時に実行する必要がある場合があります。この記事では、複数の MySQL インスタンスをより適切に管理できるようにする、MySQL のマルチインスタンス管理テクニックを紹介します。
MySQL をインストールするとき、複数の MySQL インスタンスのインストールを選択できます。複数の MySQL インスタンスのインストールは、単一の MySQL インスタンスのインストールと同じで、インストーラーの実行時に「カスタム」モードを選択し、インストール ディレクトリを指定するだけです。
インストールが完了したら、各 MySQL インスタンスのパラメーターを構成する必要があります。以下に注意が必要なパラメータをいくつか示します。
ポート: デフォルトでは、MySQL はポート 3306 を使用します。各インスタンスに異なるポートを割り当てて、相互の独立性を確保できます。
データ ディレクトリ: 相互干渉を避けるために、各インスタンスは異なるデータ ディレクトリを使用する必要があります。データ ディレクトリは任意の場所に設定できますが、別のディスク パーティションを選択することをお勧めします。
ログ ファイル: 追跡とトラブルシューティングを容易にするために、各インスタンスに異なるログ ファイルが必要です。
以下はサンプル MySQL マルチインスタンス構成ファイルの一部です:
[mysqld_multi] mysqld = /usr/bin/mysqld_safe mysqladmin = /usr/bin/mysqladmin log = /var/log/mysqld_multi.log [mysqld1] port = 3307 datadir = /var/lib/mysql1 socket = /var/lib/mysql1/mysql.sock pid-file = /var/run/mysql/mysqld1.pid log-bin = /var/log/mysql/mysql-bin.log ... [mysqld2] port = 3308 datadir = /var/lib/mysql2 socket = /var/lib/mysql2/mysql.sock pid-file = /var/run/mysql/mysqld2.pid log-bin = /var/log/mysql/mysql-bin.log ...
mysqld_multi スクリプトMySQL インスタンスの起動とシャットダウンに使用できます。以下は、mysqld_multi の一般的なコマンドです:
すべての MySQL インスタンスを開始します:
$ sudo /usr/bin/mysqld_multi start
すべての MySQL インスタンスを閉じる:
$ sudo /usr/bin/mysqld_multi stop
指定された MySQL インスタンスを開始します:
$ sudo /usr/bin/mysqld_multi start 1
指定された MySQL インスタンスを閉じます:
$ sudo /usr/bin/mysqld_multi stop 1
マルチインスタンス環境では、データのセキュリティを確保するために、各インスタンスに異なるユーザーとパスワードを割り当てる必要があります。安全性と保護。 GRANT および REVOKE コマンドを使用して、各インスタンスに異なる権限を割り当てることができます。
以下はサンプル SQL コマンドです:
GRANT ALL PRIVILEGES ON *.* TO 'user'@'localhost' IDENTIFIED BY 'password';
各インスタンスのパフォーマンスと正常性を監視する必要があります。 Explain、Show Status、Show Processlist コマンドなどの MySQL 独自の監視ツールを使用して、MySQL インスタンスのパフォーマンスを監視できます。
マルチインスタンス環境では、バックアップとリカバリは単一インスタンスの場合よりも複雑になります。各インスタンスのデータ ファイルとログ ファイルは個別にバックアップする必要があり、障害から回復するためのトラブルシューティング ガイダンスが提供されます。 MySQL 独自のバックアップ ツール mysqldump および mysqlhotcopy を使用することも、サードパーティのバックアップ ツールを使用することもできます。
つまり、複数の MySQL インスタンスを管理する場合、各インスタンスの独立性とセキュリティを維持し、バックアップや監視などの必要なメンテナンス作業を実行する必要があります。効果的なマルチインスタンス管理を通じて、さまざまなアプリケーションのニーズをより適切に満たし、MySQL サーバーの信頼性と保守性を向上させることができます。
以上がMySQL でのマルチインスタンス管理スキルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。