MySQL は、スウェーデンの会社 MySQL AB によって開発されたリレーショナル データベース管理システムであり、Oracle の製品です。 MySQL は、最も人気のあるリレーショナル データベース管理システムの 1 つです。WEB アプリケーションに関して言えば、MySQL は最高の RDBMS (リレーショナル データベース管理システム) アプリケーション ソフトウェアの 1 つです。 MySQL クエリ キャッシュをオンにすると、まったく同じ SQL ステートメントを実行するときに、サーバーは結果をキャッシュから直接読み取ります。データが変更されると以前のキャッシュは無効になるため、頻繁に変更されるテーブルはクエリ キャッシュには適していません。 1. クエリキャッシュの実装プロセス2. クエリキャッシュを構成する1. 現在のMySQLデータベースがクエリキャッシュをサポートしているかどうかを確認する 'have_query_cache' のような変数を表示します。 2. MySQLでクエリキャッシュが現在有効になっているかどうかを確認する 'query_cache_type' のような変数を表示します。 3. クエリキャッシュのサイズを確認する 'query_cache_size' のような変数を表示します。 4. クエリキャッシュのステータス変数を表示する 'Qcache%' のようなステータスを表示します。 |
パラメータ | 意味 |
---|---|
Qキャッシュ空きブロック | クエリキャッシュ内の空きメモリブロックの数 |
Qキャッシュ空きメモリ | クエリキャッシュに使用可能なメモリ量 |
Qキャッシュヒット | クエリキャッシュヒット数 |
Qcache_挿入 | クエリキャッシュに追加されたクエリの数 |
Qcache_lowmen_prunes | メモリ不足のためクエリキャッシュから削除されたクエリの数 |
Qキャッシュがキャッシュされていない | キャッシュされなかったクエリの数(キャッシュできなかった、または query_cache_type 設定によりキャッシュされなかったクエリ) |
Qcache_queries_in_cache | クエリキャッシュに登録されたクエリの数 |
Qキャッシュ合計ブロック数 | クエリキャッシュ内のブロックの総数 |
MySQL クエリ キャッシュはデフォルトで無効になっています。クエリ キャッシュを有効にするには、パラメータ query_cache_type を手動で構成する必要があります。クエリキャッシュタイプ
このパラメータには 3 つの値が可能です。
価値 | 意味 |
---|---|
オフまたは0 | クエリキャッシュが無効です |
ONまたは1 | クエリ キャッシュ機能がオンになっています。SELECT の結果は、キャッシュ条件を満たしている場合はキャッシュされます。そうでない場合はキャッシュされません。SQL_NO_CACHE が明示的に指定されている場合はキャッシュされません。 |
需要または2 | クエリ キャッシュ機能は要求に応じて実行されます。SQL_CACHE を明示的に指定する SELECT ステートメントのみがキャッシュされ、その他はキャッシュされません。 |
1. usr/my.cnf で設定します (設定ファイルは /etc/my.cnf にある場合もあります)
2. サービスを再起動する
サービスmysqlの再起動
3. テスト
SELECT ステートメントで指定できるクエリ キャッシュに関連するオプションは 2 つあります。
顧客からSQL_CACUE id、nameを選択します。 顧客からSQL_NO_CACHE id、nameを選択します。
1. 一貫性のないSQL文
キャッシュにヒットするには、クエリSQL文が一貫している必要があります。
SQL1: tb_itemからcount(*)を選択します。 SQL2: tb_Itemからcount(*)を選択します。
2. クエリステートメントに不確実な値が含まれています
SQL1: select * from tb_item where updatetime < now() limit 1; SQL2:ユーザーを選択します(); SQL3:データベースを選択します();
3. テーブルクエリステートメントを使用しない
「A」を選択します。
4. mysql、information_schema、performance_schemaデータベースのテーブルをクエリする
information_schema.engines から * を選択します。
5. ストアドファンクション、トリガー、またはイベント本体内で実行されるクエリ
タイトル通り
6. テーブルの変更によりキャッシュが削除される
テーブルが変更されると、そのテーブルを使用するすべてのキャッシュされたクエリが無効になり、キャッシュから削除されます。これには、変更されたテーブルにマップされているテーブルに対して MERGE を使用するクエリが含まれます。テーブルは、INSERT、UPDATE、DELETE、TRUNCATE TABLE、ALTER TABLE、DROP TABLE、DROP DATABASE など、さまざまな種類のステートメントによって変更できます。
上記はMySQLクエリキャッシュの簡単な使用法のまとめです。
これで、MySQL クエリ キャッシュの簡単な使用法に関するこの記事は終了です。MySQL クエリ キャッシュの使用法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。
<<: XHTML ドキュメントで JavaScript と CSS を正しく使用する方法
zhangxinxu より https://www.zhangxinxu.com/wordpress...
Centos6.5にmysql5.7.19をインストールするための詳細な手順は次のとおりです。 1....
MySQL 複数の無関係なテーブルクエリデータとページング機能要件主キーと外部キーの関連付けがない ...
目次1.コンポーネントtimelineH.vueを実装する2. コンポーネントの呼び出しこの記事では...
目次なぜ Docker が必要なのでしょうか? Docker デプロイメントの例コードの準備Dock...
show-header属性を使用したドキュメントのヒントshow-header <el-テーブ...
今日、イメージを起動した後、HTTP リクエスト経由でアクセスできないという小さな問題が発生しました...
Zhihu Discovery コラムのタイトル画像は、通常、以下のように表示されます。明らかに、グ...
現在、新しいアプリプロジェクトを開発中です。私にとっても初めてのアプリ開発です。チームで調査と検討を...
序文実際のプロジェクトでは、最も一般的な処理は計算とループロジックである可能性があります。配列でre...
目次エフェクト表示コードリンクキーコード表形式データコンポーネントのネスト検証方法リセット方法完全な...
アプリケーション ソフトウェアには通常、次のようなビジネス要件があります。新しいバージョンの APP...
この記事のシナリオと組み合わせて、Nginx と Java 環境 (SpringBoot プロジェク...
VMware ワークステーションの仮想マシンの互換性の問題を解決するにはどうすればよいですか?ノート...
MySQL データベースにデータを挿入します。以前はよく使われていた INSERT INTO テーブ...