ホームページ >バックエンド開発 >PHPチュートリアル >MySQL マニュアル バージョン 5.0.20-MySQL の最適化 (4) (1) (5)_PHP チュートリアル

MySQL マニュアル バージョン 5.0.20-MySQL の最適化 (4) (1) (5)_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 17:03:27782ブラウズ


一般に、冗長データはすべて保存する必要があります (データベース原則では「第 3 正規形」と呼ばれます)。ただし、効率を高めるために、一部の情報をコピーしたり、要約テーブルを作成したりした方がコスト効率がよい場合があります。


ストアド プロシージャまたは UDF (ユーザー定義関数) は、一部のタスクを実行するときにパフォーマンスが向上する場合があります。それでも、データベースがこれらの機能をサポートしていない場合は、多少速度が遅くても、目的を達成できる代替手段があります。


クエリ キャッシュまたは応答から結果を取得し、多くの挿入操作と更新操作を一緒に実行できます。データベースがテーブル ロック (MySQL や ORACLE など) をサポートしている場合、これにより、すべての更新操作後にインデックス キャッシュを 1 回だけリフレッシュするだけで済みます。


データがいつテーブルに書き込まれるかを知る必要がない場合は、INSERT DELAYED を使用できます。これにより、複数のレコードが同時にディスクに書き込まれるため、速度が向上します。


SELECT ステートメントに挿入操作よりも高い優先順位を持たせたい場合は、INSERT LOW_PRIORITY を使用します。


取得レコードキューをスキップするには、SELECT HIGH_PRIORITY を使用します。これは、他のクライアントがデータを書き込もうとしている場合でも、SELECT が最初に実行されることを意味します。


1 つの INSERT ステートメントで複数のレコード挿入形式を使用します (多くのデータベースでサポートされています)。


大量のデータをインポートするには、LOAD DATA INFILE を使用します。これは INSERT よりも高速です。


一意の値を生成するには、AUTO_INCREMENT フィールドを使用します。


OPTIMIZE TABLE を定期的に実行して、動的レコード形式を使用する MyISAM テーブルの断片化を防ぎます。詳細は「15.1.3 MyISAMテーブルの格納形式」を参照してください。


HEAPテーブルを採用すると、速度が向上する可能性があります。詳細は「15.1.3 MyISAMテーブルの格納形式」を参照してください。


通常の WEB サーバー構成では、画像ファイルはファイルとして保存するのが最適で、ファイルのインデックス情報のみがデータベースに保存されます。その理由は、通常、WEB サーバーはデータベースよりもファイルのキャッシュに優れているため、ファイル ストレージを使用するとシステムの高速化が容易になるためです。

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/630974.html技術記事通常、すべての冗長データ (データベース理論では「第 3 正規形」と呼ばれます) は保存される必要があります。ただし、効率を高めるために一部の情報をコピーしたり、集計表を作成したりすることも良い考えです...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。