p579〜p598。
ダウンタイムの理由
- 動作環境の問題のうち、最も一般的な問題は、ディスク領域の不足です。
- パフォーマンスの問題の中で、最も一般的な問題は遅いSQLです
- スキーマとインデックスの設計の悪さがパフォーマンスに影響を与える2番目に大きな問題です
- レプリケーションの問題は通常、マスターとスレーブの不整合が原因です
- データ損失の問題は通常、DROP TABLEの誤操作が原因で発生します
概観
ダウンタイムを減らすことによって、高可用性のために、二つの方法で考えることができる。
稼働時間(MTBF)を増やし
障害回復時間(MTTR)の短縮
- 単一障害点を回避します。スペア容量を増やしてコンポーネントを複製します。たとえば、負荷分散を行い、障害発生後、他のサーバーがその負荷を引き継ぎます。たとえば、冗長ネットワークカード、ルーター、ディスクなどです。単一点で障害が発生する可能性のあるコンポーネントはすべて検討する必要がありますNDBクラスター、Percona XtraDBクラスターなどのMySQLクラスターを使用することもできます。
- フェイルオーバーと障害回復。フェイルオーバーとは、Aサーバーが電話を切り、Aの動作を再開することを意味します。フェイルオーバーとは、Aサーバーが電話を切り、Bサーバーに転送することを意味します。2つの方法を同時に使用することもできます。 B、Aを復元し、次にAに転送します。