mysql server層做了什么

服務器處理客戶端請求

服務器程序在處理來自客戶端的查詢請求時,大致需要分為3部分:連接管理、解析與優化、存儲引擎

連接管理

每當有一個客戶端進程連接到服務器進程時,服務器進程都會創建一個線程專門處理與這個客戶端的交互;

斷開連接時,不會立馬銷毀線程,緩存留給下一個連接用。

連接時,需要認證才能建立連接。

解析與優化

查詢緩存

? 注意:只要該表的結構或者數據被修改,則與該表有關的所有查詢緩存都將變為無效并從查詢緩存中刪除!

雖然查詢緩存有時可以提升系統性能,但也不得不因維護這塊緩存而造成一些開銷。比如每次都要去查詢緩存中檢索,查詢請求處理完后需要更新查詢緩存,需要維護該查詢緩存對應的內存區域等。從MySQL 5.7.20開始,不推薦使用查詢緩存,在MySQL 8.0中直接將其刪除。

語法解析

? 略

查詢優化

我們寫的 MySQL 語句執行起來效率可能并不是很高, MySQL 的優化程序會對我們的話句做一些優化,如外連接轉換為內連接、表達式簡化子查詢轉為連接等一堆東西.

優化的結果就是生成一個執行計劃,這個執行計劃表明了應該使用哪些索引執行查詢,以及表之間的連接順序是啥樣,等等,我們可以使用 EXPLAIN 語句來查看某個語句的執行計劃.

存儲引擎

? 負責真實的數據的存儲和提取操作

不過需要注意的一點是 server 層和存儲引擎層交互時,一般是以記錄為單位的,以 SELECT 語句為例, server 層根據執行計劃先向存儲引擎層取一條記錄,然后判斷是否符合 WHERE條件:如果符合, 就發送給客戶端,否則跳過該記錄,然后繼續向存儲引擎索要下一條記錄。

server 層在判斷某條記錄符合要求之后,其實是先將其發送到一個緩沖區,待到該緩沖區滿了,才向客戶端發送真正的記錄,該緩沖區大小由系統變量 net_buffer _Iength 控制。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/84418.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/84418.shtml
英文地址,請注明出處:http://en.pswp.cn/web/84418.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

APISIX 簡介:云原生 API 網關的架構與實踐

文章目錄 引言:APISIX 概述基于Nginx構建的原因基于etcd構建的原因 架構圖示架構分層解析管理層:人機交互與配置入口控制層:配置管理與集群協調數據面:請求處理與流量轉發說明:關于OpenRestry 引言:APISIX …

【AI作畫】第3章 LORA加載器

目錄 LORA加載器 管道信息 ?編輯 ?編輯 ?編輯 lora模型的串接 作品集 LORA加載器 前面我們已經分析過節點目錄了,現在我們來看一下LORA加載器。我們進行圖片渲染,一般都需要LORA模型的。 首先,我們“鼠標右鍵——添加節點——…

Xilinx XC7A12T?1CPG238I Artix?7 FPGA

XC7A12T?1CPG238I 以其獨特的性能與封裝組合,成為諸多工程師的首選方案。下面,我們從多個維度對這款芯片做深入剖析。 一、產品定位與封裝特點 XC7A12T?1CPG238I 屬于賽靈思(Xilinx)28?nm Artix?7 系列中的入門級型號&#x…

如何利用 Java 爬蟲獲得微店商品詳情:實戰指南

在電商領域,微店作為眾多商家的線上銷售渠道之一,其商品詳情數據對于市場分析、競品研究和商業決策具有重要價值。Java 爬蟲技術可以幫助我們高效地獲取這些數據。本文將詳細介紹如何使用 Java 編寫爬蟲,獲取微店商品詳情。 一、準備工作 &…

【Bug】MAUI自定義彈窗在IOS有異常背景

文章目錄 問題問題代碼原因解決處理Bug的具體步驟 問題 自定義彈窗有異常背景 問題代碼 <mct:Popup xmlns"http://schemas.microsoft.com/dotnet/2021/maui"xmlns:x"http://schemas.microsoft.com/winfx/2009/xaml"xmlns:converters"clr-names…

C語言酒店管理系統:完整源碼與深度解析

酒店管理系統通過自動化流程提升酒店運營效率。本系統采用C語言開發&#xff0c;基于模塊化設計思想&#xff0c;包含以下核心功能&#xff1a; ?房間管理?&#xff1a;初始化房間信息、查看房間狀態?預訂管理?&#xff1a;按時間段預訂房間、查詢預訂記錄?入住管理?&am…

基于Gold-YOLO的聚合-分發機制改進YOLOv8教程

1. 引言 本文將詳細介紹如何將Gold-YOLO的核心創新——聚合-分發(Gather-and-Distribute, GD)機制集成到YOLOv8架構中。Gold-YOLO是一種創新的目標檢測架構,通過獨特的信息融合策略實現了低延遲和高準確性的理想平衡。 1.1 Gold-YOLO核心特性 Gold-YOLO的主要創新點包括…

blob 的使用 文件下載 圖片預覽 大文件分片上傳

1. 文件下載 function downloadFile(content, filename, type) {const blob new Blob([content], { type });const url URL.createObjectURL(blob);const a document.createElement(a);a.href url;a.download filename;a.click();URL.revokeObjectURL(url); }// 使用示例…

FlinkCDC-Hudi數據實時入湖原理篇

1.Hudi應用場景 面對海量數據開發場景&#xff0c;一種支持存儲多種原始數據格式、多種計算引擎、高效的元數據統一管理的存儲方式能極大的提高開發效率。所以在選擇技術選型的時候&#xff0c;這種存儲方式有以下幾個特點&#xff1a; 存儲原始數據&#xff0c;這些原始數據來…

sqldeveloper 創建新用戶并訪問其他空間特定表和視圖

創建用戶 右鍵選擇創建用戶 1.給用戶取一個名字 VIEW_TEST 2.設置密碼 123456&#xff08;建議用其他&#xff09; 3.選擇表空間和臨時空間 選擇角色 CONNECT 連接角色 選擇系統權限 然后點擊應用就可以了 然后在用戶哪里就能看到這個用戶了 登錄用戶 出現成功就說明可以…

家用電器3d掃描逆向建模中科米堆手持式藍光三維掃描儀數字建模

從廚房里的冰箱、微波爐&#xff0c;到客廳中的電視、空調&#xff0c;再到臥室的加濕器、空氣凈化器等&#xff0c;家用電器極大地提升了我們的生活品質。 家電市場的競爭日益激烈&#xff0c;產品更新換代速度加快&#xff0c;如何快速、精準地獲取現有家電產品的三維數據&a…

從“數據困境”到“數據生態”:DaaS重塑三甲醫院醫療數據治理

從“數據困境”到“數據生態”&#xff1a;DaaS如何重塑三甲醫院醫療數據治理 醫療數據治理的現狀剖析 在智慧醫療蓬勃發展的當下&#xff0c;三甲醫院憑借其豐富的臨床資源&#xff0c;積累了海量、多維度的醫療數據。這些數據猶如一座蘊藏著巨大價值的富礦&#xff0c;涵蓋了…

LVS +Keepalived 高可用群集

目錄 前言一. Keepalived 雙機熱備基礎知識1. Keepalived 概述及安裝&#xff08;1&#xff09;Keepalived 的熱備方式&#xff08;2&#xff09;Keepalived 的安裝與服務控制 2. 使用Keepalived 實現雙機熱備&#xff08;1&#xff09;主服務器的配置&#xff08;2&#xff09…

【Go語言基礎】對齊邊界與內存填充

文章目錄 一、內存對齊的核心概念二、Go語言的內存對齊規則三、內存對齊示例示例1&#xff1a;字段順序影響對齊示例2&#xff1a;指針與切片的對齊 四、如何查看內存對齊&#xff1f;五、內存對齊的優化建議六、總結&#xff1a;內存對齊的核心要點 在計算機科學中&#xff0c…

網絡核心 - CNI、Service 與 Ingress/Gateway API 解析

網絡核心 - CNI、Service 與 Ingress/Gateway API 解析 Kubernetes 的強大之處在于它極大地簡化了容器化應用的部署和管理,但其網絡模型的靈活性和復雜性也常常讓初學者感到困惑。作為 SRE,我們需要撥開迷霧,理解流量在 K8s 集群內部以及進出集群時,到底是如何流轉的。 Po…

20.jsBridge多頁面交互與原生事件監聽沖突問題

一、問題描述 ? 安卓原生頁面調起 H5A 頁面&#xff1b; ? H5A 頁面跳轉到 H5B 頁面&#xff1b; ? 在 H5B 頁面點擊“附件上傳”&#xff0c;通過 JS Bridge 調用安卓的附件上傳功能&#xff0c;彈出附件彈窗&#xff1b; ? 然后 返回 到 H5A 頁面&#xff0c;附件上傳彈窗…

產品經理的自我救贖

思考自己的商業模式 很多人可能會奇怪&#xff0c;作為一個產品經理&#xff0c;為什么要思考商業模式呢&#xff1f;這個問題有點繞&#xff0c;但看完這一小節肯定大家就明白了。 首先&#xff0c;我們做產品經理&#xff0c;一般來說是為了掙錢&#xff0c;從掙一個月的錢…

DeepSeek提示詞指南:從基礎到高階的全面解析

引言 在人工智能技術迅猛發展的今天&#xff0c;DeepSeek作為新一代智能大模型&#xff0c;正在為各行各業帶來革命性的變革。而要充分發揮DeepSeek的潛力&#xff0c;掌握其提示詞的使用技巧是關鍵。本指南旨在為用戶提供一份全面、系統、實用的DeepSeek提示詞指南&#xff0…

Linux tail 命令

Linux 的 tail 命令是一個非常實用的工具&#xff0c;用于查看文件的末尾內容&#xff0c;默認顯示文件的最后 10 行。它在系統管理和日志監控中尤為常用&#xff0c;以下是其核心功能和用法總結&#xff1a; 一、基本語法 tail [選項] [文件]二、常用選項 選項功能示例-n 或…

【案例拆解】米客方德 SD NAND 在車聯網中(有方模塊)的應用:破解傳統 TF 卡振動脫落與壽命短板

&#x1f468;?&#x1f393;博主簡介 &#x1f3c5;CSDN博客專家 ??&#x1f3c5;云計算領域優質創作者 ??&#x1f3c5;華為云開發者社區專家博主 ??&#x1f3c5;阿里云開發者社區專家博主 &#x1f48a;交流社區&#xff1a;運維交流社區 歡迎大家的加入&#xff01…