国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

性能分析之MySQL慢查詢?nèi)罩痉治觯樵內(nèi)罩荆?/h1>

這篇具有很好參考價(jià)值的文章主要介紹了性能分析之MySQL慢查詢?nèi)罩痉治觯樵內(nèi)罩荆?。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

一、背景? ?

????????MySQL的慢查詢?nèi)罩臼荕ySQL提供的一種日志記錄,他用來記錄在MySQL中響應(yīng)的時(shí)間超過閾值的語句,具體指運(yùn)行時(shí)間超過long_query_time(默認(rèn)是10秒)值的SQL,會(huì)被記錄到慢查詢?nèi)罩局小?/p>

????????慢查詢?nèi)罩疽话阌糜谛阅芊治鰰r(shí)開啟,收集慢SQL然后通過explain進(jìn)行全面分析,一般來說,生產(chǎn)是不會(huì)開啟的,收集慢查詢語句是十分耗性能的,但是我們在測試環(huán)境是可以模擬分析的,優(yōu)化SQL語句,接下來就通過實(shí)戰(zhàn),講解如何開啟慢日志查詢以及如何分析。

二、慢查詢?nèi)罩鹃_啟? ?

1)查看是否開啟,默認(rèn)是關(guān)閉的

show VARIABLES like '%slow_query_log%'

可以看到默認(rèn)慢日志的保存文件以及狀態(tài)?

性能分析之MySQL慢查詢?nèi)罩痉治觯樵內(nèi)罩荆?MySQL實(shí)戰(zhàn)開發(fā),mysql,數(shù)據(jù)庫,慢日志分析,性能優(yōu)化,慢查詢?nèi)罩? referrerpolicy=

2)開啟:

#只會(huì)開啟當(dāng)前MySQL的慢日志查詢,如果需要永久的話需要修改my.cnf/my.ini文件

set GLOBAL slow_query_log=1

3)查看默認(rèn)慢查詢sql默認(rèn)時(shí)間,大于10秒,沒有等于

show VARIABLES like 'long_query_time%'

性能分析之MySQL慢查詢?nèi)罩痉治觯樵內(nèi)罩荆?MySQL實(shí)戰(zhàn)開發(fā),mysql,數(shù)據(jù)庫,慢日志分析,性能優(yōu)化,慢查詢?nèi)罩? referrerpolicy=

4)設(shè)置sql查詢超時(shí)時(shí)間

set GLOBAL long_query_time=3

但是修改為不會(huì)立即生效,兩種辦法:

  • 關(guān)閉數(shù)據(jù)庫回話重新連接
  • 使用 show global VARIABLES like 'long_query_time%' 查看

三、模擬慢sql并分析

由于本次數(shù)據(jù)庫安裝通過docker安裝,所以需要進(jìn)入到mysql容器內(nèi)部去查看慢日志,上面看到慢日志地址/var/lib/mysql/dca928abb464-slow.log,也是mysql容器里面的。

1)docker進(jìn)入MySQL容器

docker exec -it e1066fe2db35(mysql容器) /bin/bash

2)此時(shí)進(jìn)入mysql環(huán)境,當(dāng)未登錄進(jìn)入,可以查看slow_query_log_file文件信息

cat /var/lib/mysql/dca928abb464-slow.log

3)Navicat客戶端模擬,查詢超時(shí),睡眠4秒,由于我們上面設(shè)置了查詢超過3s保存慢日志

select sleep(4);

性能分析之MySQL慢查詢?nèi)罩痉治觯樵內(nèi)罩荆?MySQL實(shí)戰(zhàn)開發(fā),mysql,數(shù)據(jù)庫,慢日志分析,性能優(yōu)化,慢查詢?nèi)罩? referrerpolicy=

?4)再一次查看cat /var/lib/mysql/dca928abb464-slow.log 文件,可以看到那個(gè)sql語句變慢了,以及耗時(shí)多久

性能分析之MySQL慢查詢?nèi)罩痉治觯樵內(nèi)罩荆?MySQL實(shí)戰(zhàn)開發(fā),mysql,數(shù)據(jù)庫,慢日志分析,性能優(yōu)化,慢查詢?nèi)罩? referrerpolicy=

?只要是超過long_query_time的sql都會(huì)被記錄

性能分析之MySQL慢查詢?nèi)罩痉治觯樵內(nèi)罩荆?MySQL實(shí)戰(zhàn)開發(fā),mysql,數(shù)據(jù)庫,慢日志分析,性能優(yōu)化,慢查詢?nèi)罩? referrerpolicy=

5)查看當(dāng)前數(shù)據(jù)有多少條慢sql?

show GLOBAL??STATUS like '%slow_queries%'

性能分析之MySQL慢查詢?nèi)罩痉治觯樵內(nèi)罩荆?MySQL實(shí)戰(zhàn)開發(fā),mysql,數(shù)據(jù)庫,慢日志分析,性能優(yōu)化,慢查詢?nèi)罩? referrerpolicy=

?6)慢日志分析工具:mysqldumpslow,這個(gè)大家有興趣的可以去詳細(xì)了解如何使用。

指定日志文件,查看記錄集中最多的sql

mysqldumpslow -s r -t 10 /var/lib/mysql/dca928abb464-slow.log

性能分析之MySQL慢查詢?nèi)罩痉治觯樵內(nèi)罩荆?MySQL實(shí)戰(zhàn)開發(fā),mysql,數(shù)據(jù)庫,慢日志分析,性能優(yōu)化,慢查詢?nèi)罩? referrerpolicy=

三、總結(jié)

本文通過實(shí)戰(zhàn)demo,一步一步配置分析如何利用慢日志去定位查詢耗時(shí)的sql語句,在實(shí)際工作中,一般將生產(chǎn)的數(shù)據(jù)拷貝到測試環(huán)境,在測試環(huán)境開啟慢日志,模擬生產(chǎn)接口調(diào)用,進(jìn)而去查看慢日志文件,定位是那個(gè)sql耗時(shí)的。文章來源地址http://www.zghlxwxcb.cn/news/detail-654015.html

到了這里,關(guān)于性能分析之MySQL慢查詢?nèi)罩痉治觯樵內(nèi)罩荆┑奈恼戮徒榻B完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 數(shù)據(jù)庫性能測試實(shí)踐:慢查詢統(tǒng)計(jì)分析

    數(shù)據(jù)庫性能測試實(shí)踐:慢查詢統(tǒng)計(jì)分析

    查看是否開啟慢查詢 mysql show variables like \\\'%slow%’; 如圖所示: 系統(tǒng)變量log_slow_admin_statements 表示是否將慢管理語句例如ANALYZE TABLE和ALTER TABLE等記入慢查詢?nèi)罩?啟用log_slow_extra系統(tǒng)變量 (從MySQL 8.0.14開始提供)將導(dǎo)致服務(wù)器將幾個(gè)額外字段寫入日志 Log_slow_slave_statements 從庫默認(rèn)

    2024年02月07日
    瀏覽(16)
  • 【jvm系列-13】jvm性能調(diào)優(yōu)篇---參數(shù)設(shè)置以及日志分析

    【jvm系列-13】jvm性能調(diào)優(yōu)篇---參數(shù)設(shè)置以及日志分析

    JVM系列整體欄目 內(nèi)容 鏈接地址 【一】初識(shí)虛擬機(jī)與java虛擬機(jī) https://blog.csdn.net/zhenghuishengq/article/details/129544460 【二】jvm的類加載子系統(tǒng)以及jclasslib的基本使用 https://blog.csdn.net/zhenghuishengq/article/details/129610963 【三】運(yùn)行時(shí)私有區(qū)域之虛擬機(jī)棧、程序計(jì)數(shù)器、本地方法棧 https

    2024年02月06日
    瀏覽(30)
  • Go應(yīng)用性能分析實(shí)戰(zhàn)

    Go應(yīng)用性能分析實(shí)戰(zhàn)

    Go很適合用來開發(fā)高性能網(wǎng)絡(luò)應(yīng)用,但仍然需要借助有效的工具進(jìn)行性能分析,優(yōu)化代碼邏輯。本文介紹了如何通過go test benchmark和pprof進(jìn)行性能分析,從而實(shí)現(xiàn)最優(yōu)的代碼效能。原文: Profiling Go Applications in the Right Way with Examples [1] Go Gopher為\\\"A Journey With Go\\\"創(chuàng)作的插圖,作者Re

    2024年02月22日
    瀏覽(20)
  • 【MYSQL高級(jí)】Mysql的SQL性能分析【借助EXPLAIN分析】

    【MYSQL高級(jí)】Mysql的SQL性能分析【借助EXPLAIN分析】

    要說sql有問題,需要拿出證據(jù),因此需要性能分析 Mysql中有專門負(fù)責(zé)優(yōu)化SELECT語句的優(yōu)化器模塊,主要功能:通過計(jì)算分析系統(tǒng)中收集到的統(tǒng)計(jì)信息,為客戶端請求的Query提供他認(rèn)為最優(yōu)的執(zhí)行計(jì)劃(它認(rèn)為最優(yōu)的數(shù)據(jù)檢索方式,不見得是DBA認(rèn)為是最優(yōu)的,這部分最耗費(fèi)時(shí)間,

    2024年02月15日
    瀏覽(99)
  • MySQL性能分析常見方式

    1、慢查詢SQL日志 查看慢SQL是否開啟 執(zhí)行下面的命令開啟慢查詢?nèi)罩?修改慢查詢閾值 查看設(shè)置的慢查詢時(shí)間 查看慢查詢?nèi)罩疚恢?查看慢查詢數(shù)目 mysqldumpslow MySQL提供了的日志分析工具,可以幫助我們分析日志,查找、分析SQL。 刪除慢SQL日志 最后要關(guān)閉慢SQL日志,不然可能

    2024年02月07日
    瀏覽(19)
  • Mysql的SQL性能分析【借助EXPLAIN分析】

    Mysql的SQL性能分析【借助EXPLAIN分析】

    要說sql有問題,需要拿出證據(jù),因此需要性能分析 Mysql中有專門負(fù)責(zé)優(yōu)化SELECT語句的優(yōu)化器模塊,主要功能:通過計(jì)算分析系統(tǒng)中收集到的統(tǒng)計(jì)信息,為客戶端請求的Query提供他認(rèn)為最優(yōu)的執(zhí)行計(jì)劃(它認(rèn)為最優(yōu)的數(shù)據(jù)檢索方式,不見得是DBA認(rèn)為是最優(yōu)的,這部分最耗費(fèi)時(shí)間,

    2024年02月12日
    瀏覽(94)
  • MySQL高級(jí)篇——性能分析工具

    MySQL高級(jí)篇——性能分析工具

    ?導(dǎo)航: ? 【黑馬Java筆記+踩坑匯總】JavaSE+JavaWeb+SSM+SpringBoot+瑞吉外賣+SpringCloud+黑馬旅游+谷粒商城+學(xué)成在線+設(shè)計(jì)模式+牛客面試題 目錄 1. 數(shù)據(jù)庫服務(wù)器的優(yōu)化步驟 2. 查看系統(tǒng)性能參數(shù) 2.1 SHOW STATUS LIKE \\\'參數(shù)\\\' 2.2?查看SQL的查詢成本 3. 定位執(zhí)行慢的 SQL:慢查詢?nèi)罩?3.0 介紹?

    2024年02月02日
    瀏覽(33)
  • MySQL 優(yōu)化—— SQL 性能分析

    MySQL 客戶端連接成功后,通過 show [session | global] status 命令可以提供服務(wù)其狀態(tài)信息。通過下面指令,可以查看當(dāng)前數(shù)據(jù)庫 CRUD 的訪問頻次: SHOW GLOBAL STATUS LIKE \\\'Com_______\\\'; 七個(gè)下劃線代表這個(gè)七個(gè)占位。 查詢數(shù)據(jù)庫中整體的 CURD 頻次,一般針對 select 比較多的數(shù)據(jù)庫。 慢查詢

    2024年02月13日
    瀏覽(89)
  • MySQL性能分析工具的使用

    MySQL性能分析工具的使用

    當(dāng)我們遇到數(shù)據(jù)庫調(diào)優(yōu)問題的時(shí)候,該如何思考呢?這里把思考的流程整理成下面這張圖。 整個(gè)流程劃分成了 觀察( Show status ) 和 行動(dòng)( Action ) 兩個(gè)部分。字母 S 的部分代表觀察(會(huì)使用相應(yīng)的分析工具),字母 A 代表的部分是行動(dòng)(對應(yīng)分析可以采取的行動(dòng))。 ? ?

    2024年02月09日
    瀏覽(27)
  • 【MySQL進(jìn)階】SQL性能分析

    【MySQL進(jìn)階】SQL性能分析

    MySQL 客戶端連接成功后,通過 show [session|global] status 命令可以提供服務(wù)器狀態(tài)信 息。通過如下指令,可以查看當(dāng)前數(shù)據(jù)庫的 INSERT 、 UPDATE 、 DELETE 、 SELECT 的訪問頻次: Com_delete: 刪除次數(shù)? ? Com_insert: 插入次數(shù) Com_select: 查詢次數(shù)? ?Com_update: 更新次數(shù) 我們可以在當(dāng)前數(shù)據(jù)庫

    2024年02月07日
    瀏覽(89)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包