650) this.width=650; "src=" Http://s2.51cto.com/wyfs02/M00/78/79/wKioL1Z9SB2g2XlHAABxN4QeSFg505.png "title=" MySQL architecture. png "alt=" Wkiol1z9sb2g2xlhaabxn4qesfg505.png "/>
1, connection to the Connection manager;
2, the Connection Manager calls the thread manager, replication generates a connection thread, in response to user requests;
3, the user module to complete the user's authorization and inspection; (unless disconnected, the reply will be in a loop state)
4. If the user sends the command, it will reach the command dispatcher;
5, if it is a query request, then send to the query request, see if the cache can hit, if can hit, then return the results, and record the log;
6, if the cache does not hit, then the statement will be sent to the parser, the parser to complete the parsing, lexical analysis, and then can be converted to the storage engine can execute the statement;
7, the optimizer according to the Status Report Module report, generate the most access path, the results of this optimization will also be reported to the status report module record results;
8, if the modification of the statement, the table modified by the module execution;
9, if the table maintains the statement, then the table maintenance module runs;
10, replication module to achieve cross-instance replication;
11, Access control module to check whether the user has access rights;
12, if has the permission, then gives the table manager, then transforms the user request into the statement which the storage engine can execute;
13. Loading files and execution by a specific storage engine (so the storage engine is at the table level)
This article is from the "unix-like" blog, make sure to keep this source http://alipay.blog.51cto.com/7119970/1728416
MARIADB Architecture and execution process