目次
- 8.1 最適化の概要
- 8.2 SQL ステートメントの最適化
- 8.3 最適化とインデックス
- 8.3.1 MySQL のインデックスの使用の仕組み
- 8.3.2 主キーの最適化
- 8.3.3 SPATIAL インデックス最適化
- 8.3.4 外部キーの最適化
- 8.3.5 カラムインデックス
- 8.3.6 マルチカラムインデックス
- 8.3.7 インデックスの使用の確認
- 8.3.8 InnoDB および MyISAM インデックス統計コレクション
- 8.3.9 B ツリーインデックスとハッシュインデックスの比較
- 8.3.10 インデックス拡張の使用
- 8.3.11 生成されたカラムインデックスのオプティマイザによる使用
- 8.3.12 不可視のインデックス
- 8.3.13 降順インデックス
- 8.3.14 TIMESTAMP カラムからのインデックス付きルックアップ
- 8.4 データベース構造の最適化
- 8.5 InnoDB テーブルの最適化
- 8.6 MyISAM テーブルの最適化
- 8.7 MEMORY テーブルの最適化
- 8.8 クエリー実行プランの理解
- 8.9 クエリーオプティマイザの制御
- 8.10 バッファリングとキャッシュ
- 8.11 ロック操作の最適化
- 8.12 MySQL サーバーの最適化
- 8.13 パフォーマンスの測定 (ベンチマーク)
- 8.14 サーバースレッド (プロセス) 情報の確認
この章では、MySQL のパフォーマンスを最適化する方法について説明し、例を示します。 最適化には、いくつかのレベルでの構成、チューニング、およびパフォーマンスの測定が含まれます。 業務の役割 (開発者、データベース管理者、または両方の組み合わせ) に応じて、個々の SQL ステートメント、アプリケーション全体、単一のデータベースサーバー、または複数のネットワーク接続されたデータベースサーバーのレベルで最適化できます。 プロアクティブにパフォーマンスを事前に計画する場合や、または問題の発生後に、構成やコードの問題のトラブルシューティングを行う場合があります。 CPU やメモリーの使用を最適化することで、スケーラビリティーを向上し、データベースを低下させず、より多くの負荷を処理させることもできます。