日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

MySql中sql語句執行過程詳細講解

瀏覽:164日期:2023-02-18 16:43:45
目錄
  • 前言:
  • sql語句的執行過程:
  • 查詢緩存:
  • 分析器:
  • 優化器:
  • 執行器:
  • 總結

前言:

很多人都在使用mysql數據庫,但是很少有人能夠說出來整個sql語句的執行過程是怎樣的,如果不了解執行過程的話,就很難進行sql語句的優化處理,也很難設計出來優良的數據庫表結構。這篇文章主要是講解一下sql語句的執行過程。

sql語句的執行過程:

客戶端、連接器、分析器、優化器、執行器、存儲引擎幾個階段。

連接器的作用:管理鏈接、權限驗證的處理。

分析器的作用:詞法分析、語法分析。

優化器的作用:執行計劃的生成、索引選擇。

執行器的作用:操作引擎、返回結果。

存儲引擎的作用:存儲數據、提供讀寫接口。

另外的一個分支是,會進行查詢緩存的操作,如果命中了緩存則直接返回的操作。

mysql可以分為server層和存儲引擎層兩個部分:

server層:

包括鏈接器、查詢緩存、分析器、優化器、執行器等,涵蓋Mysql的大多數核心服務功能,以及所有的內置函數(日期、時間、數學、和加密函數等),所有的存儲引擎的功能都在這一部分實現的,比如說存儲過程、觸發器、視圖。

存儲引擎:

主要負責數據的存儲和提取,其架構模式是插件式的,支持InnoDB、Memory等多個存儲引擎。最常用的是InnoDB,這個主要在Mysql5.5版本開始成為了默認存儲引擎。

當在執行sql查詢的時候,如果不指定引擎類型、默認使用的innoDB。當然也可以指定存儲引擎類型進行處理,比如說創建表的時候,可以把存儲引擎修改為memory,進行表的創建出合理。當然了,不同的存儲引擎的表數據存儲方式也是不一樣的。

連接器:

執行sql語句的時候,第一步需要進行數據庫的連接處理,連接器負責客戶端建立連接、獲取權限、維持和管理連接。

根據命令可以看出來,主要進行幾個參數的輸入,IP地址、端口號、以及用戶名、密碼的處理。連接mysql是客戶端工具,用戶服務器建立連接,進行tcp握手之后,連接器需要進行身份的驗證,然后輸入用戶名、密碼。

密碼不對的時候,會收到一個“Access denied for user”的錯誤提示,然后客戶端結束執行。

用戶名、密碼驗證通過之后,連接器就會開始進行權限表查詢權限,然后進行權限的操作處理。

連接完成之后,沒有進行其他的操作,這個時候連接就處于空閑狀態,show processlist。

客戶端如果長時間不操作的話,默認的等待時間(wait_timeout)是八個小時。

數據庫建立連接是比較復雜的,建議在項目中盡量少的建立連接的操作,也就是說盡量使用長連接的處理。

在項目中經常會遇到一種情況就是數據庫的長連接,很長時間不關閉的操作,這個時候會導致內存的占用太大,被系統殺掉導致的Mysql的異常。

解決方案有下面兩種方案:

  • 定期斷開長連接,使用一段時間之后,比如說執行一個占用內存的大查詢之后,這個時候斷開連接,之后要查詢的話再重新連接。
  • 通過使用命令進行重新初始化連接資源,這個時候需要重連,但是會把連接恢復到初始化的狀態。

查詢緩存:

連接建立完畢之后,進行查詢緩存的處理,執行sql語句會先到緩存中看看是不是剛剛執行了這條語句,之前執行過的語句及其結果就會以key-value對的形式直接存儲在內存中的,key是查詢的語句,value是查詢的結果,如果查詢能夠直接在這個緩存中找到key,那么這個value可以直接返回給客戶端。

如果語句不在查詢緩存中的話,就會繼續后面的執行階段,執行完成后,執行結果會被存入查詢緩存中。如果可以查詢到緩存的話,就不會進行后面的復雜操作了,效率會高很多。

查詢緩存的弊端:

查詢緩存失敗一般情況下會比較頻繁,只要對一個表的進行了更新的話,這個表上面所有的緩存就會被清空。因此一般情況下查詢緩存的命中率很低。一般情況下,一個系統的配置表或者靜態的表才會使用到查詢緩存的方式進行處理。

分析器:

分析器首先會進行詞法分析,輸入的是由多個字符串和空格組成的一條sql語句,mysql需要識別出來里面的字符串分別是什么,代表什么意思。

首先:mysql從輸入的select這個關鍵詞識別出來,這個是一個查詢的語句,需要把from關鍵字后面的,字符串t識別出來表名稱等等的操作。

然后進行語法分析的處理,根據詞法分析,根據詞法分析的結果,語句分析器就會根據語法規則判斷輸入的這個sql語句是否滿足mysql的語法。

檢查出來錯誤提示如下圖:

一般提示錯誤的信息只會進行第一個錯誤的位置。

優化器:

經過了分析器的處理,mysql就知道了該如何進行優化器的處理了,優化器的處理邏輯是在表里面進行多個索引的時候,決定使用那個索引,或者說在一個語句有多個關聯的時候,決定各個表的連接順序的情況,如下圖所示:

第一種執行的結果是處理t1.c=10是否走索引,然后可以先判斷 一下邏輯的結果是否一樣,如果執行的結果是一樣的話,可以任意選擇一種方案進行處理。

執行器:

  • 調用InNoDB引擎接口取這個表的第一行,判斷值是否10,如果是10進行集中處理,否則的話就跳過。
  • 執行器將遍歷過程中所有滿足條件的行組成的記錄集合返回給客戶端。

總結

到此這篇關于MySql中sql語句執行過程詳細講解的文章就介紹到這了,更多相關MySql sql語句執行過程內容請搜索以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持!

標簽: MySQL
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
欧美xxxx中国| 丰满少妇一区| 免费久久久久久久久| 在线天堂资源www在线污| 精品一区二区三区视频在线播放| 国产精品一站二站| 国产精品日韩精品在线播放| 国产精品久久久久久久久久齐齐 | 热久久免费视频| 久久亚洲电影| 亚洲精品在线二区| 国产伦理久久久久久妇女| 国产精品一区二区av交换| 麻豆一区二区三| 国产成人久久精品一区二区三区| 成人福利视频| 日韩av首页| 欧美在线资源| 日韩综合一区二区| 久久久国产精品网站| 亚洲播播91| 亚洲欧美日韩在线观看a三区| 婷婷视频一区二区三区| 欧美激情日韩| 日韩av免费大片| 不卡中文一二三区| 日韩一区二区三区高清在线观看| 四虎成人精品一区二区免费网站| 国产日韩欧美三级| 高清av一区| 亚洲国产一区二区在线观看| 欧美另类综合| 亚洲开心激情| 美女视频黄 久久| 激情婷婷久久| 青草国产精品| 欧美freesex黑人又粗又大| 午夜精品婷婷| 91精品国产一区二区在线观看| 精品视频在线你懂得| 在线看片不卡| 久久国产精品美女| jiujiure精品视频播放| 国产日韩欧美一区在线| 99精品在线观看| 97久久超碰| 日韩中文首页| 日韩在线卡一卡二| 美女视频黄免费的久久| 1000部精品久久久久久久久| 日韩国产成人精品| 91精品国产调教在线观看| 午夜电影一区| 日韩精品一区二区三区免费观看| 天堂精品久久久久| 99久久婷婷这里只有精品| 日韩高清欧美激情| 久久蜜桃精品| 国产精品视频一区二区三区综合| 九一精品国产| 国产精品亚洲一区二区在线观看 | 国产在线观看www| 久久亚洲美女| 色乱码一区二区三区网站| 夜夜精品视频| 成人在线视频中文字幕| 在线观看视频免费一区二区三区| 国产一区二区三区不卡av| 蜜臀国产一区二区三区在线播放| 日本久久综合| 青青草91视频| 日韩视频精品在线观看| 精品国产91| 日韩一区免费| 亚洲不卡av不卡一区二区| 欧美日韩一区自拍| 亚洲在线观看| 四虎影视精品| 国产精品777777在线播放| 性一交一乱一区二区洋洋av| 日韩成人精品一区| 国产乱子精品一区二区在线观看 | 午夜宅男久久久| 成人亚洲精品| 日韩欧美美女在线观看| 婷婷激情久久| 成人高清一区| 欧美精品成人| 久久亚洲欧洲| 午夜久久免费观看| 成人三级高清视频在线看| 国产日韩一区二区三区在线播放 | 精品在线99| 日韩亚洲一区在线| 久久精品一区| 国产精品最新| 欧美亚洲三区| 日欧美一区二区| 亚洲欧美久久久| 婷婷中文字幕一区| 久久久久国产一区二区| 韩国女主播一区二区三区| 国产伦理久久久久久妇女| 日韩精品久久理论片| 蜜臀91精品一区二区三区| 午夜久久久久| 欧美日韩国产一区精品一区| 日韩国产一区二区| 久久伊人国产| 国产精品亚洲二区| 日韩国产欧美三级| 日本成人在线网站| 日韩欧美中文在线观看| 久久亚洲不卡| 视频一区二区国产| 美女久久网站| 日本欧美在线看| 综合一区av| 亚洲精品国产精品粉嫩| 午夜天堂精品久久久久| 日韩av一二三| 欧美一级二级视频| 国产日韩欧美在线播放不卡| 国产伦理一区| 免费观看亚洲天堂| 国精品产品一区| 超碰在线99| 久久久久国产一区二区| 日本久久成人网| 久久香蕉国产| 99成人在线| 亚洲精选91| 青青草伊人久久| 国产精品成人一区二区网站软件| 欧美国产先锋| а√天堂中文在线资源8| 亚洲精品国产嫩草在线观看| 99精品视频在线| 国精品一区二区三区| 国产韩日影视精品| 视频精品一区二区| 亚洲一区二区av| 日韩高清电影一区| 国产伦精品一区二区三区视频| 国产精品亚洲人成在99www| 久久麻豆视频| 日韩欧美综合| 中文亚洲欧美| 日本国产欧美| 久久av免费| 999久久久免费精品国产| 亚洲一区日韩| 国产毛片久久久| 日韩中文在线电影| 午夜在线播放视频欧美| 日韩国产一区二| 国产成人精选| 欧美女激情福利| 亚洲男人在线| 欧美激情麻豆| 91精品国产自产在线观看永久∴| 亚洲精品小说| 欧美一区二区三区久久精品| 精品国产一区二| 欧美特黄a级高清免费大片a级| 在线精品观看| 红杏一区二区三区| 欧美日韩国产高清电影| 日韩有吗在线观看| 久久精品国产99| 日韩和欧美的一区| 国产精品一区二区三区av| 精品美女在线视频| 国产一区二区三区久久久久久久久| 国产99在线| 中国女人久久久| 国产乱码精品一区二区三区四区| 天堂√中文最新版在线| 亚洲自啪免费| 狂野欧美性猛交xxxx| 狠狠操综合网| 国产精品午夜一区二区三区| 四虎4545www国产精品 | 国产精品88久久久久久| 日韩精品a在线观看91| 最近高清中文在线字幕在线观看1| 99久久亚洲精品| 欧美日韩国产一区二区在线观看| 精品国产免费人成网站| 免费一级片91| 精品一区二区三区在线观看视频| 99在线精品免费视频九九视 | 国产精品久av福利在线观看| 欧美日韩国产v| 日本一区中文字幕| 久久久国产亚洲精品| 国产日韩欧美一区| 亚洲激情不卡| 久久久久久色| 电影亚洲精品噜噜在线观看|