中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

眼鏡網(wǎng)站怎么做谷歌海外廣告投放推廣

眼鏡網(wǎng)站怎么做,谷歌海外廣告投放推廣,哈爾濱網(wǎng)站建設(shè)的公司,網(wǎng)站做優(yōu)化需要多少錢目錄 1 MySQL 架構(gòu)說(shuō)明 2 連接層 3 核心業(yè)務(wù)層 3.1 查詢緩存 3.2 解析器 3.3 優(yōu)化器 3.4 執(zhí)行器 4 存儲(chǔ)引擎層 5 參考文檔 1 MySQL 架構(gòu)說(shuō)明 下圖是 MySQL 5.7 及其之前版本的邏輯架構(gòu)示意圖 MySQL 架構(gòu)大致可分為以下三層: 連接層:負(fù)責(zé)跟客戶…

目錄

1 MySQL 架構(gòu)說(shuō)明

2 連接層

3 核心業(yè)務(wù)層

3.1 查詢緩存

3.2 解析器

3.3 優(yōu)化器

3.4 執(zhí)行器

4 存儲(chǔ)引擎層

5 參考文檔


1 MySQL 架構(gòu)說(shuō)明

下圖是 MySQL 5.7?及其之前版本的邏輯架構(gòu)示意圖

MySQL 架構(gòu)大致可分為以下三層:

  • 連接層:負(fù)責(zé)跟客戶端建立連接、獲取權(quán)限、維持和管理連接
  • 核心業(yè)務(wù)層:包括查詢緩存、解析器、優(yōu)化器、執(zhí)行器等,涵蓋 MySQL 的大多數(shù)核心服務(wù)功能,以及所有的內(nèi)置函數(shù)(如日期、時(shí)間、數(shù)學(xué)和加密函數(shù)等),所有跨存儲(chǔ)引擎的功能都在這一層實(shí)現(xiàn),比如存儲(chǔ)過(guò)程、觸發(fā)器、視圖等
  • 存儲(chǔ)引擎層:負(fù)責(zé)數(shù)據(jù)的存儲(chǔ)和提取。其架構(gòu)模式是插件式的,支持 InnoDB、MyISAM、Memory 等多個(gè)存儲(chǔ)引擎。現(xiàn)在最常用的存儲(chǔ)引擎是 InnoDB,它從 MySQL 5.5.5 版本開(kāi)始成為了默認(rèn)存儲(chǔ)引擎

2 連接層

MySQL 連接層是 MySQL 數(shù)據(jù)庫(kù)架構(gòu)中的一個(gè)重要組成部分,它主要負(fù)責(zé)處理客戶端與數(shù)據(jù)庫(kù)服務(wù)器之間的連接和通信。

主要作用為:

  • 連接管理:連接層負(fù)責(zé)監(jiān)聽(tīng)客戶端的連接請(qǐng)求,當(dāng)客戶端請(qǐng)求連接時(shí),連接層會(huì)創(chuàng)建一個(gè)新的連接或者復(fù)用已有的空閑連接,以供客戶端使用。在客戶端使用完連接后,連接層會(huì)關(guān)閉連接以釋放資源。為了提高性能和響應(yīng)速度,連接層通常會(huì)實(shí)現(xiàn)一個(gè)線程池,線程池可以減少創(chuàng)建和銷毀線程的開(kāi)銷,因?yàn)榫€程可以被重復(fù)使用
  • 通信協(xié)議處理:連接層處理客戶端與數(shù)據(jù)庫(kù)服務(wù)器之間的通信協(xié)議。它負(fù)責(zé)解析和處理客戶端發(fā)送的請(qǐng)求,并將請(qǐng)求轉(zhuǎn)換為數(shù)據(jù)庫(kù)服務(wù)器能夠理解的格式。同時(shí),它也將數(shù)據(jù)庫(kù)服務(wù)器的響應(yīng)轉(zhuǎn)換為客戶端能夠理解的格式,并返回給客戶端
  • 安全性管理:連接層負(fù)責(zé)處理數(shù)據(jù)庫(kù)的安全性。它驗(yàn)證客戶端的身份和權(quán)限,確保只有經(jīng)過(guò)授權(quán)的客戶端能夠訪問(wèn)數(shù)據(jù)庫(kù)。連接層還可以對(duì)客戶端發(fā)送的數(shù)據(jù)進(jìn)行加密和解密,以保護(hù)數(shù)據(jù)庫(kù)中的敏感信息
  • 異常處理:連接層還負(fù)責(zé)處理數(shù)據(jù)庫(kù)連接過(guò)程中的異常情況。它可以檢測(cè)到連接超時(shí)、網(wǎng)絡(luò)中斷等異常情況,并采取相應(yīng)的措施,如重新連接或返回錯(cuò)誤信息給客戶端

查看連接狀態(tài)

通過(guò) show processlist 或 show full processlist?命令可以查看連接狀態(tài)

  • Id:線程 id
  • User:啟動(dòng)這個(gè)線程的用戶
  • Host:發(fā)送請(qǐng)求的客戶端的 IP 和端口號(hào)
  • db:當(dāng)前命令在哪個(gè)庫(kù)執(zhí)行
  • Command:該線程正在執(zhí)行的操作命令
    • Create DB:正在創(chuàng)建庫(kù)操作
    • Drop DB:正在刪除庫(kù)操作
    • Execute:正在執(zhí)行一個(gè) Prepared Statement
    • Close Stmt:正在關(guān)閉一個(gè) Prepared Statement
    • Query:正在執(zhí)行一個(gè)語(yǔ)句
    • Sleep:正在等待客戶端發(fā)送語(yǔ)句
    • Quit:正在退出
    • Shutdown:正在關(guān)閉服務(wù)器
  • Time:表示該線程處于當(dāng)前狀態(tài)的時(shí)間,單位是秒
  • State:線程狀態(tài)
    • Updating:正在搜索匹配記錄,進(jìn)行修改
    • Sleeping:正在等待客戶端發(fā)送新請(qǐng)求
    • Starting:正在執(zhí)行請(qǐng)求處理
    • Checking table:正在檢查數(shù)據(jù)表
    • Closing table : 正在將表中數(shù)據(jù)刷新到磁盤中
    • Locked:被其他查詢鎖住了記錄
    • Sending Data:正在處理 Select 查詢,同時(shí)將結(jié)果發(fā)送給客戶端
  • Info:一般記錄線程執(zhí)行的語(yǔ)句,默認(rèn)顯示前100個(gè)字符。想查看完整的使用 show full?processlist;
# 查看連接狀態(tài)
show processlist;

3 核心業(yè)務(wù)層

3.1 查詢緩存

? ? ? ? 當(dāng) MySQL 接收到一個(gè)查詢請(qǐng)求時(shí),它首先會(huì)檢查查詢緩存中是否已經(jīng)存在與該查詢請(qǐng)求相同的查詢結(jié)果。之前執(zhí)行過(guò)的語(yǔ)句及其結(jié)果可能會(huì)以 key-value 對(duì)的形式,被直接緩存在內(nèi)存中。其中 key 是查詢的語(yǔ)句,value 是查詢的結(jié)果。如果存在,MySQL 會(huì)直接返回緩存中的結(jié)果,而不需要再執(zhí)行查詢語(yǔ)句。如果查詢緩存中沒(méi)有該查詢結(jié)果,MySQL 會(huì)執(zhí)行查詢語(yǔ)句并將結(jié)果存儲(chǔ)在查詢緩存中,以便下次相同的查詢可以直接從緩存中獲取結(jié)果。我們一般不使用查詢緩存,因?yàn)橐坏┎樵兩婕暗谋戆l(fā)生改變,該緩存會(huì)失效,會(huì)被查詢緩存清除。從 MySQL 8.0 版本開(kāi)始,MySQL 不再支持查詢緩存。

3.2 解析器

? ? ? ? MySQL 首先會(huì)進(jìn)行詞法分析 (Lexical scanner),將 SQL 語(yǔ)句分成一個(gè)個(gè)的詞法單元 (Token) 。其中 Token 中包含 Keyword(也稱 symbol)和非 Keyword。之后根據(jù)語(yǔ)法分析?(Grammar rule module) 生成一棵對(duì)應(yīng)的“解析樹(shù)”。最后進(jìn)行語(yǔ)義分析,檢查“解析樹(shù)”中的元素是否在數(shù)據(jù)庫(kù)中有對(duì)應(yīng)的實(shí)體,并驗(yàn)證操作的合法性。例如會(huì)檢查數(shù)據(jù)表和數(shù)據(jù)列是否存在,還會(huì)解析名字和別名,看看它們是否有歧義,最后生成新的“解析樹(shù)”。

3.3 優(yōu)化器

? ? ? ? 優(yōu)化器會(huì)根據(jù)“解析樹(shù)”生成最優(yōu)的執(zhí)行計(jì)劃。這些執(zhí)行計(jì)劃可以分為兩類:靜態(tài)優(yōu)化(編譯時(shí)優(yōu)化)、動(dòng)態(tài)優(yōu)化(運(yùn)行時(shí)優(yōu)化)。

????????MySQL 能夠處理的優(yōu)化類型:

  • 重新定義關(guān)聯(lián)表的順序
  • 將外連接轉(zhuǎn)化為內(nèi)連接
  • 使用等價(jià)變換規(guī)則簡(jiǎn)化并規(guī)范 SQL 語(yǔ)句,如(5 = 5 AND? a > 5) 會(huì)被改寫(xiě)成 a > 5
  • 預(yù)估并轉(zhuǎn)化為常數(shù)表達(dá)式,當(dāng) MySQL 檢測(cè)到一個(gè)表達(dá)式可以轉(zhuǎn)化為常數(shù)時(shí),會(huì)一直把該表達(dá)式作為常數(shù)進(jìn)行優(yōu)化處理,如在索引列執(zhí)行?COUNT()、MIN() 和 MAX()
  • 子查詢優(yōu)化,減少數(shù)據(jù)訪問(wèn)次數(shù)
  • 提前終止查詢,當(dāng)已經(jīng)滿足查詢需求時(shí),MySQL 能夠立刻終止查詢,如使用 LIMIT 子句或條件不成立時(shí),立刻終止后續(xù)查詢
  • 等值傳播,如果兩個(gè)列的值通過(guò)等式關(guān)聯(lián),MySQL 能夠把其中一個(gè)列的 WHERE 條件傳遞到另一個(gè)列上
select g1.id,g1.name
from goods g1
inner join goods g2 using(id)
where g1.id > 5;# where g1.id > 5 等價(jià)于 where g1.id > 5 and g2.id > 5
select g1.id,g1.name
from goods g1
inner join goods g2 using(id)
where g1.id > 5 and g2.id > 5;

? ?

  • 列表 IN() 的比較,如 IN(2,1,3),MySQL 會(huì) IN() 列表中的數(shù)據(jù)進(jìn)行排序,排序后為 IN(1,2,3),然后可以通過(guò)二分查找的方式確定列表中的值是否滿足條件
3.4 執(zhí)行器

????????MySQL 執(zhí)行器是 MySQL 服務(wù)器中的一個(gè)組件,它負(fù)責(zé)執(zhí)行優(yōu)化器生成的執(zhí)行計(jì)劃,并返回查詢結(jié)果。

????????MySQL 執(zhí)行器的主要職責(zé)包括:

  • 執(zhí)行查詢計(jì)劃:根據(jù)優(yōu)化器生成的執(zhí)行計(jì)劃,執(zhí)行器會(huì)執(zhí)行相應(yīng)的操作,如讀取數(shù)據(jù)、連接表、執(zhí)行排序、聚合等
  • 處理數(shù)據(jù):執(zhí)行器會(huì)從存儲(chǔ)引擎中讀取數(shù)據(jù),并對(duì)數(shù)據(jù)進(jìn)行處理,如過(guò)濾、排序、分組等
  • 返回結(jié)果:執(zhí)行器會(huì)將處理后的數(shù)據(jù)返回給客戶端,通常以行的形式返回
  • 管理事務(wù):執(zhí)行器會(huì)負(fù)責(zé)管理事務(wù)的提交和回滾,確保數(shù)據(jù)的一致性和完整性
  • 處理錯(cuò)誤:如果在執(zhí)行過(guò)程中發(fā)生錯(cuò)誤,執(zhí)行器會(huì)捕獲錯(cuò)誤并將其返回給客戶端

執(zhí)行一條 SQL 語(yǔ)句的過(guò)程

4 存儲(chǔ)引擎層

????????MySQL 存儲(chǔ)引擎是 MySQL 數(shù)據(jù)庫(kù)的核心組件之一,它負(fù)責(zé)管理數(shù)據(jù)的存儲(chǔ)和訪問(wèn)。MySQL 支持多種存儲(chǔ)引擎,每個(gè)存儲(chǔ)引擎都有自己的特點(diǎn)和適用場(chǎng)景。常見(jiàn)的存儲(chǔ)引擎包括:

  • InnoDB:InnoDB 是 MySQL 的默認(rèn)存儲(chǔ)引擎,它支持事務(wù)、熱備份(可以在不停機(jī)的情況下進(jìn)行數(shù)據(jù)備份)、行級(jí)鎖、外鍵約束等特性,適用于大多數(shù)應(yīng)用場(chǎng)景
  • MyISAM:MyISAM 是 MySQL 的早期存儲(chǔ)引擎,它支持快速的讀取和插入操作,但不支持事務(wù)和外鍵約束
  • Memory:Memory 存儲(chǔ)引擎將數(shù)據(jù)存儲(chǔ)在內(nèi)存中,適用于需要快速訪問(wèn)數(shù)據(jù)的場(chǎng)景,但數(shù)據(jù)在服務(wù)器重啟后會(huì)丟失
  • CSV:CSV 存儲(chǔ)引擎將數(shù)據(jù)存儲(chǔ)為 CSV 文件,適用于需要導(dǎo)入和導(dǎo)出數(shù)據(jù)的場(chǎng)景
  • Archive:Archive 存儲(chǔ)引擎用于存儲(chǔ)歸檔數(shù)據(jù),支持快速的插入和壓縮操作,但不支持索引和查詢

存儲(chǔ)引擎層的主要職責(zé)包括:

  • 管理數(shù)據(jù)存儲(chǔ):存儲(chǔ)引擎負(fù)責(zé)將數(shù)據(jù)存儲(chǔ)在磁盤上,并提供高效的數(shù)據(jù)訪問(wèn)方式
  • 支持索引:存儲(chǔ)引擎負(fù)責(zé)管理索引的創(chuàng)建、維護(hù)和查詢
  • 處理事務(wù):存儲(chǔ)引擎支持事務(wù)的原子性、一致性、隔離性和持久性
  • 提供數(shù)據(jù)恢復(fù):存儲(chǔ)引擎負(fù)責(zé)在服務(wù)器崩潰或意外關(guān)閉后,恢復(fù)數(shù)據(jù)的完整性
  • 優(yōu)化查詢性能:存儲(chǔ)引擎會(huì)根據(jù)查詢條件和索引,選擇最優(yōu)的查詢計(jì)劃來(lái)提高查詢性能

5 參考文檔

《高性能MySQL》

深入淺出MySQL - 架構(gòu)與執(zhí)行 (https://www.cnblogs.com/novwind/p/17489997.html)

MySQL架構(gòu)原理(詳解) (https://cloud.tencent.com/developer/article/1981543)

MySQL架構(gòu)詳解 (https://mdnice.com/writing/43f52aeaee9644b1bc1373ff85f89972)

http://www.risenshineclean.com/news/54894.html

相關(guān)文章:

  • 自己做網(wǎng)站好不好小紅書(shū)推廣方式有哪些
  • 為企業(yè)做一個(gè)網(wǎng)站多少錢旅游推廣賺傭金哪個(gè)平臺(tái)好
  • 常州手機(jī)網(wǎng)站建設(shè)新手怎么做網(wǎng)絡(luò)銷售
  • 那些語(yǔ)言可以做動(dòng)態(tài)網(wǎng)站qq群排名優(yōu)化軟件購(gòu)買
  • 重慶銅梁網(wǎng)站建設(shè)價(jià)格新手做seo怎么做
  • 做家鄉(xiāng)網(wǎng)站源代碼網(wǎng)站收錄查詢網(wǎng)
  • 東平建設(shè)局網(wǎng)站網(wǎng)址提交百度
  • 自己建網(wǎng)站做外貿(mào)網(wǎng)店代運(yùn)營(yíng)靠譜嗎
  • 做威客有什么靠譜網(wǎng)站怎樣推廣自己的產(chǎn)品
  • 男男做的視頻網(wǎng)站請(qǐng)簡(jiǎn)述網(wǎng)絡(luò)營(yíng)銷的特點(diǎn)
  • 廣州網(wǎng)站建設(shè)騰虎seo推廣培訓(xùn)課程
  • 山東網(wǎng)站域名備案時(shí)間廣州百度首頁(yè)優(yōu)化
  • 網(wǎng)站建設(shè)價(jià)格標(biāo)準(zhǔn)報(bào)價(jià)手機(jī)seo快速排名
  • 如何編輯網(wǎng)站內(nèi)容國(guó)內(nèi)新聞最新消息10條
  • 個(gè)人主頁(yè)怎么找安徽搜索引擎優(yōu)化seo
  • 制作網(wǎng)站需要什么關(guān)鍵詞挖掘查詢工具愛(ài)站網(wǎng)
  • wordpress多站點(diǎn)文章調(diào)用長(zhǎng)沙seo服務(wù)
  • 做網(wǎng)站如何上傳百度平臺(tái)商家
  • wordpress tracseo人才網(wǎng)
  • 網(wǎng)站域名可以更改嗎seo引擎優(yōu)化公司
  • 網(wǎng)站建設(shè)的banner圖東莞網(wǎng)站推廣方案
  • 電子商務(wù)網(wǎng)站建設(shè)的作用百度網(wǎng)址大全簡(jiǎn)單版
  • 做視頻網(wǎng)站的條件域名權(quán)重是什么意思
  • 做網(wǎng)站建設(shè)的網(wǎng)站百度移動(dòng)端優(yōu)化
  • 金華建站模板做網(wǎng)站的公司哪家最好
  • 馬鞍山做網(wǎng)站公司嘉興關(guān)鍵詞優(yōu)化報(bào)價(jià)
  • 溫州網(wǎng)站建設(shè)公司有哪些seo快照推廣
  • 濟(jì)南網(wǎng)站推廣公司杭州seo工作室
  • 許昌市做網(wǎng)站公司seo頁(yè)面優(yōu)化公司
  • 網(wǎng)站開(kāi)發(fā)長(zhǎng)沙做好網(wǎng)絡(luò)推廣的技巧