要約すれば:
テーブルを設計する場合:
索引:
要約: 適切なデータ型を使用し、適切なインデックスを選択する SQL の記述を最適化する必要があります。 クエリ結果のレコードを制限するには、limitを使用します。 select * を避け、検索する必要があるフィールドをリストします。 サブクエリの代わりに結合を使用する 大きな削除または挿入ステートメントを分割する スロークエリログをオンにすると、遅いSQLを見つけることができます。 列操作なし: SELECT id WHERE age + 1 = 10。データベース チュートリアル関数、計算式など、列に対するすべての操作はテーブル スキャンになります。クエリを実行するときは、操作を等号の右側に移動するようにしてください。 SQL 文はできるだけシンプルにする必要があります。1 つの SQL 文は 1 つの CPU でのみ実行できます。大きな文はロック時間を短縮するために小さな文に分割する必要があります。1 つの大きな SQL 文はデータベース全体をブロックする可能性があります。 OR を IN に書き換えます。OR の効率は n ですが、IN の効率は log(n) です。IN の数は 200 以内に抑えることをお勧めします。 実装には関数やトリガーは必要ありません %xxx 形式のクエリを避ける JOINは控えめに使用してください 比較には同じ型を使用します(例: '123' と '123'、123 と 123) WHERE 句では != または <> 演算子の使用を避けてください。そうしないと、エンジンはインデックスを放棄し、テーブル全体のスキャンを実行します。 連続した値の場合は、IN ではなく BETWEEN を使用します: SELECT id FROM t WHERE num BETWEEN 1 AND 5 リスト データにテーブル全体を使用しないでください。LIMIT を使用してデータをページに分割します。ページ数は大きすぎないようにしてください。 エンジン: マイISAM 行ロックはサポートされていません。読み取り時に読み取りが必要なすべてのテーブルがロックされ、書き込み時にテーブルに排他ロックが追加されます。 トランザクションはサポートされていません 外部キーはサポートされていません クラッシュ後の安全な回復をサポートしていない テーブルの読み取りとクエリの実行中にテーブルに新しいレコードを挿入する機能をサポートします。 BLOBとTEXTの最初の500文字のインデックス作成と全文インデックス作成をサポート インデックスの遅延更新をサポートし、書き込みパフォーマンスを大幅に向上 変更されないテーブルについては、ディスク容量の使用量を大幅に削減するために圧縮がサポートされています。 翻訳 行ロックをサポートし、MVCCを使用して高い同時実行性をサポートします。 サポート業務 外部キーをサポート クラッシュ後の安全な回復をサポート 全文インデックスはサポートされていません 一般的に、MyISAM は SELECT 集中型テーブルに適しており、InnoDB は INSERT および UPDATE 集中型テーブルに適しています。 パーティション、テーブル、データベース(読み取りと書き込みの分離) 上記は、編集者が紹介したMySQL最適化戦略の詳細な説明と統合です。皆様のお役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。編集者がすぐに返信します。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。 以下もご興味があるかもしれません:
|
<<: Nginx 書き換えジャンプの適用シナリオの詳細な説明
>>: Vue+express+Socketでチャット機能を実現
この記事の例では、参考までにセルの結合を実現するためのel-tableの具体的なコードを共有していま...
この記事では、jsネイティブウォーターフォールフロープラグインの具体的なコードを参考までに共有します...
序文ロックの範囲に応じて、MySQL のロックは、グローバル ロック、テーブル ロック、行ロックに大...
この記事では、Vueの具体的なコード例を参考までに紹介します。具体的な内容は以下のとおりです。初心者...
最近私の記事を読んだ人なら誰でも、私が現在WeChatミニプログラムプロジェクトを担当しており、その...
目次親コンポーネントリストボックスリストコンポーネントボタンコンポーネント PageButton昨年...
目次ジェネリック型での条件型の使用ツールタイプ脱出ポッド矢印関数で条件型を使用する型推論による条件型...
環境: 1 CentOS Linux リリース 7.5.1804 (コア)ファイアウォールと sel...
ポップアップニュースは国内のインターネットサービスでは一般的であり、リアルタイムプッシュ方式はウェブ...
序文この記事では主に、CSS3 を使用してテキスト折り紙効果を実現する例を紹介します。これは、参考と...
目次1. 本番環境と開発環境を切り替える最初の方法: .envファイルを設定する2番目の方法2. フ...
mysql ストアド プロシージャの概念:特定のタスク (クエリと更新) を実行できる、データベース...
前回のブログでは、Nginx と httpd を使用して、逆生成用のバックエンド Tomcat サー...
序文低速システム コールとは、決して戻らない可能性があり、プロセスを永久にブロックするシステム コー...
この記事では、トークンログイン認証を実装するためのVUEの具体的なコードを例として紹介します。具体的...