目次
sql语句优化
一、SQL优化的一般步骤
ホームページ データベース mysql チュートリアル 小贝_mysqlsql语句优化过程_MySQL

小贝_mysqlsql语句优化过程_MySQL

Jun 01, 2016 pm 12:59 PM
声明 プロセス

sql语句优化

一、SQL优化的一般步骤

(1)、通过show status命令了解各种SQL的执行频率。

(2)、定位执行效率较低的SQL语句-(重点select)

(3)、通过explain分析低效率的SQL语句的执行情况

(4)、确定问题并采取相应的优化措施

(1) 通过showstatus命令了解各种SQL的执行频率

MySQL客户端连接成功后,通过使用show[session|global] status 命令可以提供服务器状态信息。其中的session来表示当前的连接的统计结果,global来表示自数据库上次启动至今的统计结果。默认是session级别的。

下面的例子: show status like ‘Com_%’;

其中Com_XXX表示XXX语句所执行的次数。

重点注意:

Com_select,Com_insert,Com_update,Com_delete通过这几个参数,可以容易地了解到当前数据库的应用是以插入更新为主还是以查询操作为主,以及各类的SQL大致的执行比例是多少。

参数说明:

com_xxx表示每个xxx语句的执行次数.如:

com_select 表示执行select操作的次数,一次查询只累计加1

com_update 表示执行update操作的次数

com_insert 表示执行insert操作的次数,对批量插入只算一次

com_delete 表示执行delete操作的次数

只针对innodb存储引擎的参数

Innodb_rows_deleted执行delete操作所影响的行数

Innodb_rows_inserted执行insert操作所影响的行数

Innodb_rows_read执行select操作所影响的行数

Innodb_rows_updated执行update操作所影响的行数

还有几个常用的参数便于用户了解数据库的基本情况。

connections:试图连接MySQL服务器的次数(成功or失败都会进行累加)

uptime:服务器工作的时间(单位秒)

slow_queries:慢查询的次数 (默认是10)

(2)、定位执行效率较低的SQL语句

通过开启慢查询

(3)、通过explain分析低效率的SQL语句的执行情况

(4)、确定问题并采取相应的优化措施

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

バック・トゥ・ザ・フューチャー 19996-24の過ごし方 バック・トゥ・ザ・フューチャー 19996-24の過ごし方 Mar 02, 2024 pm 12:58 PM

バック・トゥ・ザ・フューチャー 1999 では、プレイヤーは多くのレベルの課題に直面し、各レベルはまったく異なる課題をもたらします。レベルの 1 つである 6 ~ 24 は、間違いなく多くのプレイヤーがそれについて考えているでしょう。このレベルへの挑戦方法は知っているので、以下に関連するクリアランス方法も示します。バック・トゥ・ザ・フューチャー 19996-24 クリア方法 1. レベル 30 を一言で燃やした後、ボスが気絶するのを待って強打します。 2.メインCと142dを優先して1ラウンドで燃やす。 3. 2ラウンド目は補助と乳母の小スキルでバーンとメインのCカードで大技を組み立てます。 4. ボスは 3 ラウンドで気絶させられ、その後究極の移動スキルとダメージ スキルで直接倒されます。

ミンタイドファンタジーランドの難易度3の攻略方法 ミンタイドファンタジーランドの難易度3の攻略方法 Feb 28, 2024 pm 10:19 PM

Ming Tide Fantasyland 難易度 3 のレベルをクリアする方法を共有します。ミンチャオの多くの人が、このファンタジー ランドのレベル 3 を完了しています。このレベルは実際には少し難しいです。多くの友人はまだ何をすればよいかわかりませんが、心配しないでください。編集者がそれを持ってきます。戦略が載っているので、ぜひ試してみてください。 Ringing Tide Fantasy 難易度 3 をクリアするにはどうすればよいですか? ベルタートル キャラクターの共鳴スキルを強化すると、空力効果が向上します。これにより、攻撃効率が向上し、ダメージが大きくなります。エフェクトの差し替えも可能です。 [メタファー] 最初の 3 つのレベルから選択します: 森の太陽: Ji Yan のダメージを大幅に増加させることができ、スキルをより多く使用すると、非常に優れたクリティカル ヒット効果を生み出すことができます。保護装置: 共振技術を使用

PHP8.0のmulti-catch文 PHP8.0のmulti-catch文 May 14, 2023 pm 01:51 PM

Web アプリケーションの開発に伴い、PHP 言語は Web 開発で広く使用されています。 PHP8.0 バージョンでは、新しい言語機能である multi-catch ステートメントが導入されました。マルチキャッチステートメントとは何ですか?以前の PHP バージョンでは、開発者は複数の例外タイプを処理するために複数の catch ステートメントを作成する必要がありました。たとえば、次のコード ブロックは 2 つの異なる例外の処理を示しています。

MySQL でテーブルのロックを解除するステートメントを実装するにはどうすればよいですか? MySQL でテーブルのロックを解除するステートメントを実装するにはどうすればよいですか? Nov 08, 2023 pm 06:28 PM

MySQL でテーブルのロックを解除するステートメントを実装するにはどうすればよいですか? MySQL では、テーブル ロックは、データの整合性と一貫性を保護するために一般的に使用されるロック メカニズムです。トランザクションがテーブルの読み取りおよび書き込みを行っている場合、他のトランザクションはテーブルを変更できません。このロック メカニズムにより、データの一貫性がある程度保証されますが、他のトランザクションがブロックされる可能性もあります。したがって、何らかの理由でトランザクションを続行できない場合は、他のトランザクションを続行できるようにテーブルのロックを手動で解除する必要があります。 MySQL はさまざまな機能を提供します

MySQLにデータを挿入するステートメントを実装するにはどうすればよいですか? MySQLにデータを挿入するステートメントを実装するにはどうすればよいですか? Nov 08, 2023 am 11:48 AM

MySQLにデータを挿入するステートメントを実装するにはどうすればよいですか? MySQL データベースを使用する場合、データの挿入は非常に基本的で一般的な操作です。データを挿入することにより、新しいレコードをデータベース テーブルに追加して、業務運営をサポートできます。この記事では、MySQL で INSERT ステートメントを使用してデータ挿入操作を実装する方法を紹介し、具体的なコード例を示します。 MySQL の INSERT ステートメントは、データベース テーブルに新しいレコードを挿入するために使用されます。基本的な構文形式は次のとおりです。 INSERTINTOt

MySQL でテーブルを作成するステートメントを実装するにはどうすればよいですか? MySQL でテーブルを作成するステートメントを実装するにはどうすればよいですか? Nov 08, 2023 pm 08:21 PM

MySQL でテーブルを作成するステートメントを実装するにはどうすればよいですか? MySQL データベースでは、テーブルの作成は最も重要な操作の 1 つです。テーブルを作成するステートメントでは、データ ストレージの正確さと完全性を確保するために、テーブル構造、フィールド タイプ、制約などのさまざまな要素を考慮する必要があります。 MySQLでテーブルステートメントを作成する方法を、具体的なコード例も含めて詳しく紹介します。まず、MySQL データベース サーバーに接続する必要があります。次のコマンドを使用して接続できます: mysql-uusername-p 次に、パスワードを入力します。

MySQL でユーザー権限を取り消すステートメントを実装するにはどうすればよいですか? MySQL でユーザー権限を取り消すステートメントを実装するにはどうすればよいですか? Nov 08, 2023 pm 01:04 PM

MySQL でユーザー権限を取り消すステートメントを実装するにはどうすればよいですか? MySQL データベースでは、ユーザーの権限を管理する必要があることがよくあります。ただし、データベースのセキュリティを確保するために、特定のユーザーの権限を取り消す必要がある場合があります。この記事では、MySQL でユーザー権限を取り消す方法を具体的なコード例を使って実装する方法を紹介します。まず、MySQL データベース サーバーにログインし、root などの十分な権限を持つユーザーに切り替える必要があります。次に、REVOKE ステートメントを使用してユーザーを取り戻すことができます。

SQL ALTER ステートメントの目的 SQL ALTER ステートメントの目的 Feb 19, 2024 pm 05:01 PM

SQL ALTER ステートメントの機能には、特定のコード サンプルが必要です。データベース管理システムでは、ALTER ステートメントはデータベース オブジェクトを変更するために使用される SQL コマンドです。 ALTER ステートメントを使用すると、テーブル、列、インデックス、ビューなどのデータベース オブジェクトを、追加、削除、変更などの操作を含めて変更できます。以下では、ALTER ステートメントの一般的な使用法を詳しく紹介し、関連するコード例を示します。 ALTERTABLE ステートメントは、テーブルの構造を変更するために使用されます。列、制約、インデックスなどを追加、削除、変更できます。

See all articles