首頁 資料庫 mysql教程 生产环境高并发MySQL SQL语句优化案例

生产环境高并发MySQL SQL语句优化案例

Jun 07, 2016 pm 05:41 PM
生產環境 高並行

生产环境高并发MySQLSQL语句优化10条案例声明:本案例为老男孩linux运维实战培训的数据库优化教学案例,如有转载务必保留本版权声明在实际工作中,运维或DBA人员

?,'?,'?,'绉︽矝','寰愬厠');

最终解决方案:有用到boy_title_upper的索引,慢的原因再观察

案例4:分析归类后的慢查询日志如下。

______________________________________________________________________ 004 ___

Count: 378(6.04%)

Time: 2604 s total, 6.888889 s avg, 3 s to 65 s max(7.63%)

95% of Time : 2031 s total, 5.657382 s avg, 3 s to 17 s max

Lock Time (s) : 0 total, 0 avg, 0 to 0 max(0.00%)

95% of Lock : 0 total, 0 avg, 0 to 0 max

Rows sent: 5 avg, 0 to 10 max(3.24%)

Rows examined : 2.81k avg, 92 to 24.91k max(27.61%)

Database: docresource

Users: 

ett_oldboy@ 10.0.1.28 : 100.00% (378) of query, 100.00% (6256) of all users

Query abstract:

SELECT h.boy_id ,MAX(h.boy_his_edit_time) AS boy_his_edit_time FROM t_boy_his h WHERE h.boy_his_isteammate=N AND h.boy_his_state=N AND h.boy_his_editor_user_id_encrypt='S' GROUP BY h.boy_id ORDER BY h.boy_his_edit_time DESC LIMIT N,N;

Query sample:

selecth.boy_id ,max(h.boy_his_edit_time) from t_boy_his hwhere h.boy_his_editor_user_id_encrypt='pGVpWQVlYdglTaQ0Z' and h.boy_his_isteammate=1 and h.boy_his_state=1 group by h.boy_id order by h.boy_his_edit_time desc limit 0,4; 

最终解决方案:

alter table t_boy_his add index editor_user_iden_docid(boy_his_editor_user_id_encrypt, boy_id);

1,sql改成:SELECT h.boy_id ,MAX(h.boy_his_edit_time) AS boy_his_edit_time FROM t_boy_his h WHERE h.boy_his_isteammate='pGVpWQVlYdglTaQ0Z' AND h.boy_his_state=1 AND h.boy_his_editor_user_id_encrypt='S' GROUP BY h.boy_id ORDER BY null

2,再在程序里,用javaboy_his_edit_time排序。

案例5:分析归类后的慢查询日志如下。

______________________________________________________________________ 005 ___

Count: 211(3.37%)

Time: 1218 s total, 5.772512 s avg, 3 s to 30 s max(3.57%)

95% of Time : 1022 s total, 5.11 s avg, 3 s to 13 s max

Lock Time (s) : 0 total, 0 avg, 0 to 0 max(0.00%)

95% of Lock : 0 total, 0 avg, 0 to 0 max

Rows sent: 2 avg, 0 to 2 max(0.72%)

Rows examined : 3.61k avg, 110 to 19.59k max(19.81%)

Database: 

Users: 

ett_oldboy@ 10.0.1.28 : 100.00% (211) of query, 100.00% (6256) of all users

Query abstract:

SELECT h.boy_id ,MAX(h.boy_his_edit_time) AS boy_his_edit_time FROM t_boy_his h WHERE h.boy_his_isteammate=N AND h.boy_his_state=N AND h.boy_his_editor_user_id=N GROUP BY h.boy_id ORDER BY h.boy_his_edit_time DESC LIMIT N,N;

Query sample:

selecth.boy_id ,max(h.boy_his_edit_time) as boy_his_edit_time from t_boy_his hwhere h.boy_his_isteammate=1 and h.boy_his_state=1 and h.boy_his_editor_user_id=300000178518 group by h.boy_id order by h.boy_his_edit_time desc limit 0,2;

最终解决方案:此sql由查前面一个sql代替,删除。

案例6:分析归类后的慢查询日志如下。

______________________________________________________________________ 006 ___

Count: 30(0.48%)

Time: 940 s total, 31.333333 s avg, 3 s to 77 s max(2.76%)

95% of Time : 790 s total, 28.214286 s avg, 3 s to 69 s max

Lock Time (s) : 0 total, 0 avg, 0 to 0 max(0.00%)

95% of Lock : 0 total, 0 avg, 0 to 0 max

Rows sent: 1 avg, 1 to 1 max(0.05%)

Rows examined : 10.96k avg, 1.82k to 28.12k max(8.56%)

Database: docresource

Users: 

ett_oldboy@ 10.0.1.28 : 100.00% (30) of query, 100.00% (6256) of all users

Query abstract:

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

PHP高並發環境下的請求調度與任務分配方法 PHP高並發環境下的請求調度與任務分配方法 Aug 10, 2023 pm 01:24 PM

PHP高並發環境下的請求調度與任務分配方法隨著互聯網的快速發展,PHP作為廣泛應用的後端開發語言,面臨越來越多的高並發請求。在高並發環境下,如何實現請求調度與任務分配成為了開發中需要解決的重要問題。本文將介紹一些PHP高並發環境下的請求調度與任務分配方法,並提供程式碼範例。一、進程管理與任務佇列在PHP高並發環境下,進程管理與任務佇列是常用的實作方式

Golang框架在高並發系統中的架構 Golang框架在高並發系統中的架構 Jun 03, 2024 pm 05:14 PM

對於高並發系統,Go框架提供管道模式、Goroutine池模式和訊息佇列模式等架構模式。在實戰案例中,高並發網站使用Nginx代理、Golang網關、Goroutine池和資料庫處理大量並發請求。程式碼範例展示了Goroutine池的實現,用於處理傳入請求。透過選擇合適的架構模式和實現,Go框架可以建立可擴展且高並發的高並發系統。

PHP 框架在高並發場景下的效能表現 PHP 框架在高並發場景下的效能表現 Jun 06, 2024 am 10:25 AM

在高並發情境下,根據基準測試,PHP框架的表現表現依序為:Phalcon(RPS2200)、Laravel(RPS1800)、CodeIgniter(RPS2000)、Symfony(RPS1500)。實際案例表明,Phalcon框架在電商網站雙十一活動中實現了每秒3000個訂單處理。

利用swoole開發功能實現高並發網路通信 利用swoole開發功能實現高並發網路通信 Aug 08, 2023 pm 01:57 PM

利用Swoole開發功能實現高並發網路通訊摘要:Swoole是一款基於PHP語言的高效能網路通訊框架,具有協程、非同步IO、多進程等特性,適用於開發高並發的網路應用程式。本文將介紹如何利用Swoole開發高並發網路通訊功能,並給予一些程式碼範例。引言隨著網路的快速發展,對於網路通訊的要求也越來越高,特別是在高並發的場景下。傳統的PHP開發面臨同時處理能力較弱

PHP高並發處理中的資料庫讀寫最佳化技巧 PHP高並發處理中的資料庫讀寫最佳化技巧 Aug 12, 2023 pm 04:31 PM

PHP高並發處理中的資料庫讀寫優化技巧隨著網路的快速發展,網站訪問量的成長也變得越來越高。在現今的網路應用中,高並發處理已經成為了一個不可忽視的問題。而在PHP開發中,資料庫的讀寫操作是效能瓶頸之一。因此,在高並發場景下,優化資料庫讀寫操作是非常重要的。以下將介紹一些PHP高並發處理中的資料庫讀寫最佳化技巧,並給出對應的程式碼範例。使用連接池技術連接資料庫會

swoole開發功能的高併發TCP長連接處理技巧 swoole開發功能的高併發TCP長連接處理技巧 Aug 25, 2023 pm 10:01 PM

【標題】Swoole開發功能的高並發TCP長連接處理技巧【導言】隨著互聯網的高速發展,應用程式對並發處理的需求也越來越高。 Swoole作為一款基於PHP的高效能網路通訊引擎,提供了強大的非同步、多進程、協程能力,大大提升了應用程式並發處理的能力。本文將介紹如何使用Swoole開發功能的高並發TCP長連接處理技巧,並結合程式碼範例進行詳細說明。 【正文】一、Swo

golang函數在物件導向程式設計中高並發場景下的應用 golang函數在物件導向程式設計中高並發場景下的應用 Apr 30, 2024 pm 01:33 PM

在物件導向編程的高並發場景中,函數在Go語言中具有廣泛應用:函數作為方法:函數可附加到結構體,實現物件導向編程,方便操作結構體資料和提供特定功能。函數作為並發執行體:函數可作為goroutine的執行體,實現並發任務執行,提升程式效率。函數作為回調:函數可作為參數傳遞給其他函數,在特定事件或操作發生時被調用,提供靈活的回調機制。

PHP高併發環境下的負載平衡技巧與原理 PHP高併發環境下的負載平衡技巧與原理 Aug 12, 2023 am 10:57 AM

PHP高併發環境下的負載平衡技巧與原理在當今網路應用中,高並發成為了一個重要的議題。針對PHP應用程式而言,如何有效地應對高並發場景成為了開發者需要思考和解決的問題。而負載平衡技術則成為了處理高並發的重要手段之一。本文將介紹PHP高並發環境下的負載平衡技巧與原理,並透過程式碼範例加深理解。一、負載平衡的原理負載平衡指的是將處理請求的負荷平衡地分發到多台服

See all articles