목차
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으로 문의하세요.

뜨거운 기사 태그

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Back to the Future 19996-24를 보내는 방법 Back to the Future 19996-24를 보내는 방법 Mar 02, 2024 pm 12:58 PM

Back to the Future 19996-24를 보내는 방법

Mingtide Fantasyland의 난이도 3을 극복하는 방법 Mingtide Fantasyland의 난이도 3을 극복하는 방법 Feb 28, 2024 pm 10:19 PM

Mingtide Fantasyland의 난이도 3을 극복하는 방법

PHP8.0의 다중 캐치 문 PHP8.0의 다중 캐치 문 May 14, 2023 pm 01:51 PM

PHP8.0의 다중 캐치 문

MySQL에서 테이블 잠금을 해제하는 명령문을 구현하는 방법은 무엇입니까? MySQL에서 테이블 잠금을 해제하는 명령문을 구현하는 방법은 무엇입니까? Nov 08, 2023 pm 06:28 PM

MySQL에서 테이블 잠금을 해제하는 명령문을 구현하는 방법은 무엇입니까?

MySQL에 데이터 삽입 명령문을 구현하는 방법은 무엇입니까? MySQL에 데이터 삽입 명령문을 구현하는 방법은 무엇입니까? Nov 08, 2023 am 11:48 AM

MySQL에 데이터 삽입 명령문을 구현하는 방법은 무엇입니까?

MySQL에서 테이블을 생성하는 명령문을 구현하는 방법은 무엇입니까? MySQL에서 테이블을 생성하는 명령문을 구현하는 방법은 무엇입니까? Nov 08, 2023 pm 08:21 PM

MySQL에서 테이블을 생성하는 명령문을 구현하는 방법은 무엇입니까?

SQL ALTER 문의 목적 SQL ALTER 문의 목적 Feb 19, 2024 pm 05:01 PM

SQL ALTER 문의 목적

MySQL에서 사용자 비밀번호를 변경하는 명령문을 구현하는 방법은 무엇입니까? MySQL에서 사용자 비밀번호를 변경하는 명령문을 구현하는 방법은 무엇입니까? Nov 08, 2023 am 09:05 AM

MySQL에서 사용자 비밀번호를 변경하는 명령문을 구현하는 방법은 무엇입니까?

See all articles