Heim Datenbank MySQL-Tutorial MySQL内存使用-线程独享

MySQL内存使用-线程独享

Jun 07, 2016 pm 04:31 PM
mysql 使用 内存 数据库 线程

对于任何一个数据库管理系统来说,内存的分配使用绝对可以算的上是其核心之一了,所以很多希望更为深入了解某数据库管理系统的人,都会希望一窥究竟,我也不例外。 从内存的使用方式MySQL 数据库的内存使用主要分为以下两类 线程独享内存 全局共享内存 今天

对于任何一个数据库管理系统来说,内存的分配使用绝对可以算的上是其核心之一了,所以很多希望更为深入了解某数据库管理系统的人,都会希望一窥究竟,我也不例外。

从内存的使用方式MySQL 数据库的内存使用主要分为以下两类

  • 线程独享内存
  • 全局共享内存

今天这篇文章暂时先分析 MySQL 中主要的 “线程独享内存” 的。

在 MySQL 中,线程独享内存主要用于各客户端连接线程存储各种操作的独享数据,如线程栈信息,分组排序操作,数据读写缓冲,结果集暂存等等,而且大多数可以通过相关参数来控制内存的使用量。

线程栈信息使用内存(thread_stack):主要用来存放每一个线程自身的标识信息,如线程id,线程运行时基本信息等等,我们可以通过 thread_stack 参数来设置为每一个线程栈分配多大的内存。

排序使用内存(sort_buffer_size):MySQL 用此内存区域进行排序操作(filesort),完成客户端的排序请求。当我们设置的排序区缓存大小无法满足排序实际所需内存的时候,MySQL 会将数据写入磁盘文件来完成排序。由于磁盘和内存的读写性能完全不在一个数量级,所以sort_buffer_size参数对排序操作的性能影响绝对不可小视。排序操作的实现原理请参考:MySQL Order By 的实现分析。

Join操作使用内存(join_buffer_size):应用程序经常会出现一些两表(或多表)Join的操作需求,MySQL在完成某些 Join 需求的时候(all/index join),为了减少参与Join的“被驱动表”的读取次数以提高性能,需要使用到 Join Buffer 来协助完成 Join操作(具体 Join 实现算法请参考:MySQL 中的 Join 基本实现原理)。当 Join Buffer 太小,MySQL 不会将该 Buffer 存入磁盘文件,而是先将Join Buffer中的结果集与需要 Join 的表进行 Join 操作,然后清空 Join Buffer 中的数据,继续将剩余的结果集写入此 Buffer 中,如此往复。这势必会造成被驱动表需要被多次读取,成倍增加 IO 访问,降低效率。

顺序读取数据缓冲区使用内存(read_buffer_size):这部分内存主要用于当需要顺序读取数据的时候,如无发使用索引的情况下的全表扫描,全索引扫描等。在这种时候,MySQL 按照数据的存储顺序依次读取数据块,每次读取的数据快首先会暂存在read_buffer_size中,当 buffer 空间被写满或者全部数据读取结束后,再将buffer中的数据返回给上层调用者,以提高效率。

随机读取数据缓冲区使用内存(read_rnd_buffer_size):和顺序读取相对应,当 MySQL 进行非顺序读取(随机读取)数据块的时候,会利用这个缓冲区暂存读取的数据。如根据索引信息读取表数据,根据排序后的结果集与表进行Join等等。总的来说,就是当数据块的读取需要满足一定的顺序的情况下,MySQL 就需要产生随机读取,进而使用到 read_rnd_buffer_size 参数所设置的内存缓冲区。

连接信息及返回客户端前结果集暂存使用内存(net_buffer_size):这部分用来存放客户端连接线程的连接信息和返回客户端的结果集。当 MySQL 开始产生可以返回的结果集,会在通过网络返回给客户端请求线程之前,会先暂存在通过 net_buffer_size 所设置的缓冲区中,等满足一定大小的时候才开始向客户端发送,以提高网络传输效率。不过,net_buffer_size 参数所设置的仅仅只是该缓存区的初始化大小,MySQL 会根据实际需要自行申请更多的内存以满足需求,但最大不会超过 max_allowed_packet 参数大小。

批量插入暂存使用内存(bulk_insert_buffer_size):当我们使用如 insert … values(…),(…),(…)… 的方式进行批量插入的时候,MySQL 会先将提交的数据放如一个缓存空间中,当该缓存空间被写满或者提交完所有数据之后,MySQL 才会一次性将该缓存空间中的数据写入数据库并清空缓存。此外,当我们进行 LOAD DATA INFILE 操作来将文本文件中的数据 Load 进数据库的时候,同样会使用到此缓冲区。

临时表使用内存(tmp_table_size):当我们进行一些特殊操作如需要使用临时表才能完成的 Order By,Group By 等等,MySQL 可能需要使用到临时表。当我们的临时表较小(小于 tmp_table_size 参数所设置的大小)的时候,MySQL 会将临时表创建成内存临时表,只有当 tmp_table_size 所设置的大小无法装下整个临时表的时候,MySQL 才会将该表创建成 MyISAM 存储引擎的表存放在磁盘上。不过,当另一个系统参数 max_heap_table_size 的大小还小于 tmp_table_size 的时候,MySQL 将使用 max_heap_table_size 参数所设置大小作为最大的内存临时表大小,而忽略 tmp_table_size 所设置的值。而且 tmp_table_size 参数从 MySQL 5.1.2 才开始有,之前一直使用 max_heap_table_size。

上面所列举的 MySQL 线程独享内存仅仅只是所有线程独享内存中的部分,并不是全部,选择的原则是可能对 MySQL 的性能产生较大的影响,且可以通过系统参数进行调节。

由于以上内存都是线程独享,极端情况下的内存总体使用量将是所有连接线程的总倍数。所以各位朋友在设置过程中一定要谨慎,切不可为了提升性能就盲目的增大各参数值,避免因为内存不够而产生 Out Of Memory 异常或者是严重的 Swap 交换反而降低整体性能。

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Optimierung des großen Speichers. Was soll ich tun, wenn der Computer auf 16g/32g Speichergeschwindigkeit aktualisiert wird und es keine Änderung gibt? Optimierung des großen Speichers. Was soll ich tun, wenn der Computer auf 16g/32g Speichergeschwindigkeit aktualisiert wird und es keine Änderung gibt? Jun 18, 2024 pm 06:51 PM

Bei mechanischen Festplatten oder SATA-Solid-State-Laufwerken werden Sie die erhöhte Software-Laufgeschwindigkeit spüren. Wenn es sich um eine NVME-Festplatte handelt, spüren Sie sie möglicherweise nicht. 1. Importieren Sie die Registrierung in den Desktop und erstellen Sie ein neues Textdokument, kopieren Sie den folgenden Inhalt, fügen Sie ihn ein, speichern Sie ihn als 1.reg, klicken Sie dann mit der rechten Maustaste, um den Computer zusammenzuführen und neu zu starten. WindowsRegistryEditorVersion5.00[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\MemoryManagement]"DisablePagingExecutive"=d

Quellen zufolge werden Samsung Electronics und SK Hynix nach 2026 gestapelten mobilen Speicher kommerzialisieren Quellen zufolge werden Samsung Electronics und SK Hynix nach 2026 gestapelten mobilen Speicher kommerzialisieren Sep 03, 2024 pm 02:15 PM

Laut Nachrichten dieser Website vom 3. September berichteten die koreanischen Medien etnews gestern (Ortszeit), dass die „HBM-ähnlichen“ mobilen Speicherprodukte mit Stapelstruktur von Samsung Electronics und SK Hynix nach 2026 kommerzialisiert werden. Quellen zufolge betrachten die beiden koreanischen Speichergiganten gestapelten mobilen Speicher als wichtige zukünftige Einnahmequelle und planen, den „HBM-ähnlichen Speicher“ auf Smartphones, Tablets und Laptops auszudehnen, um End-Side-KI mit Strom zu versorgen. Früheren Berichten auf dieser Website zufolge heißt das Produkt von Samsung Electronics LPWide I/O-Speicher und SK Hynix nennt diese Technologie VFO. Die beiden Unternehmen haben ungefähr den gleichen technischen Weg gewählt, nämlich die Kombination von Fan-Out-Verpackungen und vertikalen Kanälen. Der LPWide I/O-Speicher von Samsung Electronics hat eine Bitbreite von 512

Kingbang bringt neuen DDR5 8600-Speicher auf den Markt, erhältlich in CAMM2, LPCAMM2 und regulären Modellen Kingbang bringt neuen DDR5 8600-Speicher auf den Markt, erhältlich in CAMM2, LPCAMM2 und regulären Modellen Jun 08, 2024 pm 01:35 PM

Laut Nachrichten dieser Website vom 7. Juni stellte GEIL seine neueste DDR5-Lösung auf der Taipei International Computer Show 2024 vor und stellte SO-DIMM-, CUDIMM-, CSODIMM-, CAMM2- und LPCAMM2-Versionen zur Auswahl. ▲Bildquelle: Wccftech Wie im Bild gezeigt, verfügt der von Jinbang ausgestellte CAMM2/LPCAMM2-Speicher über ein sehr kompaktes Design, kann eine maximale Kapazität von 128 GB und eine Geschwindigkeit von bis zu 8533 MT/s bieten Stabil auf der AMDAM5-Plattform. Übertaktet auf 9000 MT/s ohne zusätzliche Kühlung. Berichten zufolge kann der Speicher der Polaris RGBDDR5-Serie 2024 von Jinbang bis zu 8400 bereitstellen

So beheben Sie den Fehler „mysql_native_password nicht geladen' unter MySQL 8.4 So beheben Sie den Fehler „mysql_native_password nicht geladen' unter MySQL 8.4 Dec 09, 2024 am 11:42 AM

Eine der wichtigsten Änderungen, die in MySQL 8.4 (der neuesten LTS-Version von 2024) eingeführt wurden, besteht darin, dass das Plugin „MySQL Native Password“ nicht mehr standardmäßig aktiviert ist. Darüber hinaus entfernt MySQL 9.0 dieses Plugin vollständig. Diese Änderung betrifft PHP und andere Apps

Lexar God of War Wings ARES RGB DDR5 8000 Speicher Bildergalerie: Colorful White Wings unterstützt RGB Lexar God of War Wings ARES RGB DDR5 8000 Speicher Bildergalerie: Colorful White Wings unterstützt RGB Jun 25, 2024 pm 01:51 PM

Da die Preise für UHF-Flaggschiff-Speicher wie 7600MT/s und 8000MT/s allgemein hoch sind, hat Lexar Maßnahmen ergriffen. Sie haben eine neue Speicherserie namens Ares Wings ARES RGB DDR5 auf den Markt gebracht, die in zwei Spezifikationen erhältlich ist: 7600 C36 und 8000 C38 Die 16GB*2-Sets kosten 1.299 Yuan bzw. 1.499 Yuan, was sehr kostengünstig ist. Diese Website hat die 8000 C38-Version von Wings of War erhalten und stellt Ihnen die Unboxing-Bilder vor. Die Verpackung des Lexar Wings ARES RGB DDR5-Speichers ist gut gestaltet und verwendet auffällige schwarze und rote Farbschemata mit farbenfrohem Aufdruck. In der oberen linken Ecke der Verpackung befindet sich ein exklusives &quo.

Die Speicherspezifikationen DDR5 MRDIMM und LPDDR6 CAMM stehen zur Markteinführung bereit, JEDEC veröffentlicht wichtige technische Details Die Speicherspezifikationen DDR5 MRDIMM und LPDDR6 CAMM stehen zur Markteinführung bereit, JEDEC veröffentlicht wichtige technische Details Jul 23, 2024 pm 02:25 PM

Laut Nachrichten dieser Website vom 23. Juli gab die JEDEC Solid State Technology Association, der Standardsetzer für Mikroelektronik, am 22. Ortszeit bekannt, dass die technischen Spezifikationen für DDR5MRDIMM- und LPDDR6CAMM-Speicher bald offiziell eingeführt werden, und stellte die wichtigsten Details dieser beiden vor Erinnerungen. Das „MR“ in DDR5MRDIMM steht für MultiplexedRank, was bedeutet, dass der Speicher zwei oder mehr Ranks unterstützt und mehrere Datensignale auf einem einzigen Kanal ohne zusätzliche physische Daten kombinieren und übertragen kann. Die Verbindung kann die Bandbreite effektiv erhöhen. JEDEC hat mehrere Generationen von DDR5MRDIMM-Speichern geplant, mit dem Ziel, die Bandbreite schließlich auf 12,8 Gbit/s zu erhöhen, verglichen mit den aktuellen 6,4 Gbit/s des DDR5RDIMM-Speichers.

Longsys zeigt FORESEE LPCAMM2 Notebook-Speicher an: bis zu 64 GB, 7500 MT/s Longsys zeigt FORESEE LPCAMM2 Notebook-Speicher an: bis zu 64 GB, 7500 MT/s Jun 05, 2024 pm 02:22 PM

Laut Nachrichten dieser Website vom 16. Mai gab Longsys, die Muttergesellschaft der Marke Lexar, bekannt, dass sie auf der CFMS2024 eine neue Form des Speichers vorführen wird – FORESEELPCAMM2. FORESEELPCAMM2 ist mit LPDDR5/5x-Partikeln ausgestattet, ist mit 315ball- und 496ball-Designs kompatibel, unterstützt Frequenzen von 7500MT/s und mehr und verfügt über Produktkapazitätsoptionen von 16GB, 32GB und 64GB. In Bezug auf die Produkttechnologie übernimmt FORESEELPCAMM2 eine neue Designarchitektur, um 4 x32LPDDR5/5x-Speicherpartikel direkt auf dem Kompressionsstecker zu verpacken und so einen 128-Bit-Speicherbus auf einem einzigen Speichermodul zu realisieren, was eine effizientere Verpackung als Standard-Speichermodule ermöglicht.

Es wird berichtet, dass Samsung Electronics die Investition in die 1-cnm-DRAM-Speicherproduktionslinie der P4-Fabrik in Pyeongtaek bestätigt hat und beabsichtigt, diese im Juni nächsten Jahres in Betrieb zu nehmen. Es wird berichtet, dass Samsung Electronics die Investition in die 1-cnm-DRAM-Speicherproduktionslinie der P4-Fabrik in Pyeongtaek bestätigt hat und beabsichtigt, diese im Juni nächsten Jahres in Betrieb zu nehmen. Aug 12, 2024 pm 04:31 PM

Laut Nachrichten dieser Website vom 12. August berichteten die koreanischen Medien ETNews, dass Samsung Electronics intern seinen Investitionsplan zum Bau einer 1-cnm-DRAM-Speicherproduktionslinie in der P4-Fabrik in Pyeongtaek bestätigt hat. Die Produktionslinie soll im nächsten Juni in Betrieb genommen werden Jahr. Pyeongtaek P4 ist ein umfassendes Halbleiterproduktionszentrum, das in vier Phasen unterteilt ist. In der früheren Planung war die erste Phase für NAND-Flash-Speicher vorgesehen, die zweite Phase für den Logik-Foundry und die dritte und vierte Phase für DRAM-Speicher. Samsung hat in der ersten Phase von P4 DRAM-Produktionsanlagen eingeführt, die zweite Bauphase jedoch auf Eis gelegt. 1cnm DRAM ist der 20~10nm Speicherprozess der sechsten Generation, und die 1cnm (oder entsprechenden 1γnm) Produkte der einzelnen Unternehmen wurden noch nicht offiziell veröffentlicht. Koreanische Medien berichteten, dass Samsung Electronics plant, Ende dieses Jahres mit der Produktion von 1-cnm-Speichern zu beginnen. ▲Samsung Pyeongtaek

See all articles