Mysql のメモリ管理は大規模かつ高度であり、これは mem0pool.c ファイルの冒頭のコメントで説明されています。9 つの大きなブロックを含む 4 つの部分に大別できます。
#9 つの大きなブロック:
buffer pool, parsed andoptimized SQL statements, data dictionarycache, log buffer, locks for eachtransaction, hash table forthe adaptive index, state andbuffers for each SQL query currently being executed, session foreach user, and stack for eachOS thread.
9 つの大きなブロックは 4 つの部分を通して管理されます
A solution tothe memory management: 1. the bufferpool size is set separately; 2. log buffersize is set separately; 3. the commonpool size for all the other entries, except 8, is set separately.
つまり、バッファー プール、REDO ログバッファ、通常のプール、および 8 (ユーザーセッション情報、一部とみなすことができます)
REDO ログバッファは REDO 部分によって個別に管理されます。バッファプールは多くのコンテンツを含む複雑な部分です. 通常のプールは 8 と 1,2 を除いて上記に記載されており、残りはその管理下にあります。
MySQL は C で開発されています。
というソース コードのダウンロードがあります。
以上がmysqlのソースコードは何語ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。