当前位置:网站首页>MySQL Architecture - logical architecture
MySQL Architecture - logical architecture
2022-07-04 22:38:00 【swttws.】
Catalog
One 、 Organize logical architecture
Two 、 Inquire about SQL Execution cycle
1、 Modify the configuration file , Turn on query cache
2、 Open the query execution plan
3、 Execute the same query statement twice
4、 Shows the most recently executed SQL sentence
5、 Inquire about 6,7 Implementation plan
One 、 Organize logical architecture
MySQL Mainly reflected in the storage engine architecture , The plug-in storage engine architecture separates query processing from other system tasks and data storage and extraction . Here's the picture :

1、 adjoining course
(1) Serve client connection , Contains the local socket Communication and most are client based / The implementation of server-side tools is similar to tcp/ip Communication for ;
(2) It mainly completes connection processing , Authorized certification , Safety treatment ;
(3) Introduce thread pool , Provide threads for secure authenticated clients ;
(4) Also on this layer, we can implement the system based on SSL Security links for . The server will also verify the operation permissions it has for each client of secure access .
2、 Service layer
This layer architecture mainly completes most of the core service functions , Such as SQL Interface , And complete the cache query ,SQL Analysis and optimization of some built-in functions .
(1)Management Serveices & Utilities: System management and control tools ;
(2)SQL interface : Accept users SQL command , And return the user query results ;
(3)Parser: Parser :SQL Command parsing and verification ;
(4) Optimizer: Query optimizer ;
(5) Cache and Buffer: If the query cache has a hit query result , The query statement can directly query the cache to fetch data . The caching mechanism consists of a series of small caches . For example, table caching , Record the cache ,key cache , Authority cache, etc .
3、 Engine layer
Storage engine layer , The storage engine is really responsible for MySQL The storage and extraction of data in , Server pass API Communicating with the storage engine . Different storage engines have different functions , So we can choose according to our actual needs .
4、 Storage layer
Data storage layer , It mainly stores the data on the file system running on the bare device , And complete the interaction with the storage engine .
Two 、 Inquire about SQL Execution cycle
1、 Modify the configuration file , Turn on query cache
(1) Modify the configuration file /etc/my.cnf, Add a new line :query_cache_type=1
restart MySQL service
systemctl restart mysqld
2、 Open the query execution plan
show variables like '%profiling%';
set profiling=1;
3、 Execute the same query statement twice
select * from mydb.mytbl where id=1 ;
4、 Shows the most recently executed SQL sentence
show profiles;
5、 Inquire about 6,7 Implementation plan
(1)6 Implementation plan of
show profile cpu,block io for query 6;
(2) Inquire about 7 Implementation plan of
show profile cpu,block io for query 7;
You can find 7 The number executed is higher than 6 A lot less information , It shows that the query statement can get data from the cache ,SQL Statements must be consistent to cache hits , If the · database insert,update,delete, Cache will be invalidated
3、 ... and 、 Query process
1、mysql The client connects to the server , Send query statement , The server will check the cache first (query cache), If there is the same statement as the query statement in the cache , Direct return , Otherwise, parse the statement ;
2、 If a query result is already in the cache , The server will no longer parse the query 、 Optimize 、 And perform . It simply returns the results in the cache to the user , This will greatly improve the performance of the system ;
3、 Syntax parser and preprocessor : First mysql Pass the keyword will SQL Statement parsing , And make a corresponding one “ The parse tree ”;
4、mysql The parser will use mysql Syntax rules validate and parse queries ;
5、 The preprocessor is based on some mysql The rule further checks that the parse tree is legal , When the query optimizer when the parse tree is considered legal , And the optimizer converts it into an execution plan ;
6、 A query can be executed in many ways , All return the same result . The function of the optimizer is to find out The best execution plan .
7、 then ,mysql Default BTREE Indexes , And a general direction is : No matter how tossed sql, At least for the moment ,mysql Only one index in the table is used less .
边栏推荐
- Mongodb aggregation operation summary
- Interview essential leetcode linked list algorithm question summary, whole process dry goods!
- 集群的概述与定义,一看就会
- Alibaba launched a new brand "Lingyang" and is committed to becoming a "digital leader"
- SPSS安装激活教程(包含网盘链接)
- 2022-07-04: what is the output of the following go language code? A:true; B:false; C: Compilation error. package main import “fmt“ func main() { fmt.Pri
- 国产数据库乱象
- Locust性能测试 —— 环境搭建及使用
- 短视频系统源码,点击屏幕空白处键盘不自动收起
- 繁華落盡、物是人非:個人站長該何去何從
猜你喜欢

Scala download and configuration

MYSQL架构——逻辑架构

Nat. Commun.| Machine learning jointly optimizes the affinity and specificity of mutagenic therapeutic antibodies

Kdd2022 | what features are effective for interaction?

Hit the core in the advanced area of misc in the attack and defense world

Energy momentum: how to achieve carbon neutralization in the power industry?

共创软硬件协同生态:Graphcore IPU与百度飞桨的“联合提交”亮相MLPerf

攻防世界 MISC 进阶区 Ditf

Unity-VScode-Emmylua配置报错解决

【愚公系列】2022年7月 Go教学课程 003-IDE的安装和基本使用
随机推荐
将QA引入软件开发生命周期是工程师要遵循的最佳实践
Convolutional neural network model -- lenet network structure and code implementation
Practice and principle of PostgreSQL join
Force buckle 3_ 383. Ransom letter
【OpenGL】笔记二十九、抗锯齿(MSAA)
Easy to use app recommendation: scan QR code, scan barcode and view history
环境加密技术解析
Scala download and configuration
LOGO special training camp section I identification logo and Logo Design Ideas
UML diagram memory skills
Common open source codeless testing tools
Introduction and application of bigfilter global transaction anti duplication component
现在mysql cdc2.1版本在解析值为0000-00-00 00:00:00的datetime类
攻防世界 MISC 進階區 Erik-Baleog-and-Olaf
NFT Insider #64:电商巨头eBay提交NFT相关商标申请,毕马威将在Web3和元宇宙中投入3000万美元
Flask 上下文详解
NFT insider 64: e-commerce giant eBay submitted an NFT related trademark application, and KPMG will invest $30million in Web3 and metauniverse
Lost in the lock world of MySQL
我在linux里面 通过调用odspcmd 查询数据库信息 怎么静默输出 就是只输出值 不要这个
Wake up day, how do I step by step towards the road of software testing





