Inhaltsverzeichnis
概述
MyISAM
InnoDB
MEMORY
MERGE
总结
Heim Datenbank MySQL-Tutorial (5)mysql常用存储引擎_MySQL

(5)mysql常用存储引擎_MySQL

Jun 01, 2016 pm 01:00 PM
常用 引擎

概述

??mysql5.5之前默认存储引擎是MyISAM,5.5之后改为InnoDB。若要修改默认引擎,可以修改配置文件中的default-storage-engine。可以通过show engines来查看当前数据库支持的引擎。使用select engine from information_schema.engines where transactions = 'yes';来查看哪些引擎支持事务。在创建表到时候通过engine=...或type=...来指定所要使用到引擎。

MyISAM

它不支持事务,也不支持外键,其优势是访问的速度快,对事务完整性没有要求的或者以select/insert为主的应用基本上可以使用这个引擎来创建表。

每个MyISAM在磁盘上都有3个文件,其文件名都与表名相同,但扩展名是:

.frm(表定义) .MYD(MYDate:存储数据) .MYI(MYIndex:存储索引) .MYD文件和.MYI文件可以放置在不同的目录中,通过 data directory 和index directory语句指定。 MyISAM类型的表可能会损坏,可以使用CHECK TABLE语句来检查MyISAM表的健康,并用REPAIR TABLE语句修复一个损坏到MyISAM表。

MyISAM支持3种不同的存储格式:

静态(固定长度)表 动态表 压缩表

??在静态表中,如果需要保存的内容后面本来就带有空格,那么在返回结果的时候会去掉公共的。
??在动态表中,记录不固定,优点是占用空间相对比较少,缺点是频繁的更新和删除记录会产生碎片,需要定期执行optimize table 来改善性能。
??在压缩表中,由myisampack工具创建,占据非常小的磁盘空间。因为每个记录都被单独压缩的。

InnoDB

InnoDB支持事务安全,对比MyISAM引擎,InnoDB写的效率差一些,并且会占据更多的磁盘空间。 InnoDB自动增长列可以手工插入,但是插入的值是空或者0,则实际插入的将是自动增长后的值。可以使用last_insert_id()查询当前线程最后插入记录使用的值。可以通过alert table *** auto_increment=n;语句强制设置自动增长值。 对于InnoDB表,自动增长列必须是索引。如果是组合索引,也必须是组合索引的第一列,但是对于MyISAM表,自动增长列可以是组合索引的其他列,这样插入记录后,自动增长列是按照组合索引到前面几列排序后递增的。 MySQL支持外键的存储引擎只有InnoDB,在创建外键的时候,父表必须有对应的索引,子表在创建外键的时候也会自动创建对应的索引。在创建索引的时候,可以指定在删除、更新父表时,对子表进行的相应操作,包括restrict、cascade、set null和no action。其中restrict和no action相同,是指限制在子表有关联的情况下,父表不能更新;casecade表示父表在更新或删除时,更新或者删除子表对应的记录;set null 则表示父表在更新或者删除的时候,子表对应的字段被set null。当某个表被其它表创建了外键参照,那么该表对应的索引或主键被禁止删除。可以使用set foreign_key_checks=0;临时关闭外键约束,set foreign_key_checks=1;打开约束。

InnoDB存储表和索引有如下两种方式:

使用共享表空间存储。 使用多表空间存储。

MEMORY

memory使用存在内存中的内容来创建表。每个MEMORY表实际对应一个磁盘文件,格式是.frm。MEMORY类型的表访问非常快,因为它到数据是放在内存中的,并且默认使用HASH索引,但是一旦服务器关闭,表中的数据就会丢失,但表还会继续存在。 每个MEMORY表中放置到数据量的大小,受到max_heap_table_size系统变量的约束,这个系统变量的初始值是16M,同时在创建MEMORY表时可以使用MAX_ROWS子句来指定表中的最大行数。 memory主要用于那些内容变化不频繁的代码表,或作为统计操作的中间结果表。

MERGE

merge存储引擎是一组MyISAM表的组合,这些MyISAM表结构必须完全相同,MERGE表中并没有数据,对MERGE类型的表可以进行查询、更新、删除的操作,这些操作实际上是对内部的MyISAM表进行操作。 对于对MERGE表进行的插入操作,是根据INSERT_METHOD子句定义的插入的表,可以有3个不同的值,first和last值使得插入操作被相应的作用在第一个或最后一个表上,不定义这个子句或者为NO,表示不能对这个MERGE表进行插入操作。 可以对MERGE表进行drop操作,这个操作只是删除MERGE表的定义,对内部的表没有任何影响。 MERGE在磁盘上保留2个以MERGE表名开头文件:.frm文件存储表的定义;.MRG文件包含组合表的信息,包括MERGE表由哪些表组成,插入数据时的依据。可以通过修改.MRG文件来修改MERGE表,但是修改后要通过flush table刷新。 merge表与分区表的区别是:merge表不会智能的将记录写到对应的表中,而分区表可以的。

总结

仍一张表作为总结:
mysql常用存储引擎

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

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

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)

Lernen Sie das Canvas-Framework kennen und erklären Sie das häufig verwendete Canvas-Framework im Detail Lernen Sie das Canvas-Framework kennen und erklären Sie das häufig verwendete Canvas-Framework im Detail Jan 17, 2024 am 11:03 AM

Entdecken Sie das Canvas-Framework: Um die häufig verwendeten Canvas-Frameworks zu verstehen, sind spezifische Codebeispiele erforderlich. Einführung: Canvas ist eine in HTML5 bereitgestellte Zeichen-API, mit der wir umfangreiche Grafik- und Animationseffekte erzielen können. Um die Effizienz und den Komfort des Zeichnens zu verbessern, haben viele Entwickler verschiedene Canvas-Frameworks entwickelt. In diesem Artikel werden einige häufig verwendete Canvas-Frameworks vorgestellt und spezifische Codebeispiele bereitgestellt, um den Lesern ein tieferes Verständnis für die Verwendung dieser Frameworks zu vermitteln. 1. EaselJS-Framework Ea

Frühlingsanmerkung enthüllt: Analyse gängiger Anmerkungen Frühlingsanmerkung enthüllt: Analyse gängiger Anmerkungen Dec 30, 2023 am 11:28 AM

Spring ist ein Open-Source-Framework, das viele Anmerkungen bereitstellt, um die Java-Entwicklung zu vereinfachen und zu verbessern. In diesem Artikel werden häufig verwendete Spring-Annotationen ausführlich erläutert und spezifische Codebeispiele bereitgestellt. @Autowired: Die Autowired-Annotation @Autowired kann verwendet werden, um Beans im Spring-Container automatisch zu verdrahten. Wenn wir die Annotation @Autowired verwenden, wenn Abhängigkeiten erforderlich sind, findet Spring passende Beans im Container und fügt sie automatisch ein. Der Beispielcode lautet wie folgt: @Auto

Redmi G Pro 2024 Wir sehen uns am 4. März, mit Eiskühlung und Unterstützung für die PC-Version der heftigen Engine Redmi G Pro 2024 Wir sehen uns am 4. März, mit Eiskühlung und Unterstützung für die PC-Version der heftigen Engine Mar 02, 2024 pm 12:19 PM

Redmi gab heute offiziell bekannt, dass das neue Redmi GPro 2024 am 4. März offiziell veröffentlicht wird. Mit anderen Worten: Nächste Woche wird dieses aufregende neue Produkt auf den Markt kommen. RedmiGPro2024 gibt sein komplettes Debüt als E-Sport-Flaggschiff, indem es die Fähigkeiten der Mobiltelefonindustrie tief in das Notebook-Geschäft integriert, eine 210-W-Superleistungsversion vorstellt und die Redmi-Leistung einen neuen Höchststand erreicht. Ausgestattet mit einem i9-14900HX-Prozessor und einer RTX4060-Grafikkarte kombiniert es E-Sport und Kreation perfekt, um eine doppelte Evolution zu erreichen. Unter diesem Gesichtspunkt wird die Leistung dieses neuen Produkts noch einmal verbessert, und die tatsächliche Wirkung ist spannend. Im offiziellen Warm-up wurde erwähnt, dass das neue Redmi G Pro 2024 die PC-Version der heftigen Engine mitbringt. Drei Hauptfaktoren führen zur Stärkung der Mobiltelefontechnologie

Super realistische Darstellung! Der Technologieexperte von Unreal Engine erklärt das globale Beleuchtungssystem Lumen Super realistische Darstellung! Der Technologieexperte von Unreal Engine erklärt das globale Beleuchtungssystem Lumen Apr 08, 2023 pm 10:21 PM

Globale Beleuchtung in Echtzeit (Echtzeit-GI) war schon immer der heilige Gral der Computergrafik. Im Laufe der Jahre hat die Industrie verschiedene Methoden zur Lösung dieses Problems vorgeschlagen. Zu den gängigen Methoden gehört die Einschränkung des Problembereichs durch die Verwendung bestimmter Annahmen, wie z. B. statische Geometrie, eine grobe Szenendarstellung oder die Verfolgung grober Sonden, und die Interpolation der Beleuchtung zwischen beiden. In der Unreal Engine wurde das globale Beleuchtungs- und Reflexionssystem Lumen Technology von Krzysztof Narkowicz und Daniel Wright mitbegründet. Das Ziel bestand darin, eine Lösung zu entwickeln, die sich von ihren Vorgängern unterschied und eine gleichmäßige Beleuchtung und eine backenähnliche Lichtqualität erreichen konnte. Kürzlich, bei SIGGRAPH 2022, Krzysztof Narko

Aktueller Test der NVIDIA AI-Game-Engine: Echtzeit-Chat mit NPC, Chinesisch ist fließend Aktueller Test der NVIDIA AI-Game-Engine: Echtzeit-Chat mit NPC, Chinesisch ist fließend Mar 04, 2024 am 09:40 AM

Der intelligente NPC, den Akademiker Huang in „Cyberpunk 2077“ erschaffen hat, kann bereits Chinesisch sprechen? Qubits Erfahrung aus erster Hand, Zeuge zu werden, wie sich NPCs fließend auf Chinesisch und Englisch unterhalten, mit natürlichen Ausdrücken und Bewegungen und passenden Mundformen ... Wenn es keinen Bildschirm vor mir gäbe, würde es sich wirklich so anfühlen, als wäre ich dort. Auf der diesjährigen CES nutzte Nvidia seine intelligente Engine Avatar Cloud Engine (ACE), um Spiel-NPCs „lebendig“ zu machen, was für einen ziemlichen Schock sorgte. △Der auf der CES gezeigte intelligente NPC verwendet ACE. Die Charaktere im Spiel können realistische Sprachgespräche mit Spielern führen und dabei lebendige Ausdrücke und Körperbewegungen zeigen, ohne dass im Voraus ein Skript vorbereitet werden muss. Zum Zeitpunkt des Debüts gab es Ubisoft, Tencent, NetEase, MiHoYo und andere Länder.

Motorenlandschaft verändert sich: Dreizylindermotoren fordern die Dominanz von Sechs- und Achtzylindern heraus Motorenlandschaft verändert sich: Dreizylindermotoren fordern die Dominanz von Sechs- und Achtzylindern heraus Oct 08, 2023 pm 10:57 PM

Laut Nachrichten vom 8. Oktober erlebt der US-Automobilmarkt einen Wandel unter der Haube. Die bisher beliebten Sechszylinder- und Achtzylindermotoren verlieren allmählich ihre Dominanz, während Dreizylindermotoren auf dem Vormarsch sind. Die Nachrichten vom 8. Oktober zeigten, dass sich der US-amerikanische Automobilmarkt unter der Haube verändert. Die in der Vergangenheit beliebten Sechszylinder- und Achtzylindermotoren verlieren allmählich ihre Dominanz und der Dreizylindermotor beginnt sich durchzusetzen. In den Köpfen der meisten Menschen lieben Amerikaner Modelle mit großem Hubraum und den „amerikanischen großen V8“. war schon immer das Synonym für amerikanische Autos. Doch laut kürzlich von ausländischen Medien veröffentlichten Daten durchläuft die Landschaft des US-amerikanischen Automobilmarkts enorme Veränderungen und der Kampf unter der Motorhaube verschärft sich. Es wird davon ausgegangen, dass die Vereinigten Staaten vor 2019

15 häufig verwendete Währungskreis -Escape Index -Technologieanalyse 15 häufig verwendete Währungskreis -Escape Index -Technologieanalyse Mar 03, 2025 pm 05:48 PM

Eingehende Analyse des Top 15 Bitcoin Escape Index: Marktaussichten für 2025 Dieser Artikel analysiert zutiefst fünfzehn üblicherweise verwendete Bitcoin Escape Index, darunter das Bitcoin-Rhodl-Verhältnis, das aktuelle Vermögensverwaltungsmanagement von USDT und den Altcoin Seasonal Index haben den Escape Index 2024 erreicht und marktwirtschaftliche Aufmerksamkeit auf sich ziehen. Wie sollten Anleger mit potenziellen Risiken umgehen? Lassen Sie uns diese Indikatoren nacheinander interpretieren und angemessene Antwortstrategien untersuchen. 1. Detaillierte Erläuterung der wichtigsten Indikatoren AHR999 Coin -Hortenindikator: Erstellt von AHR999, Unterstützung von Bitcoin Fixed Investment Strategy. Der aktuelle Wert beträgt 1,21, was sich im Warten- und Seesbereich befindet. Es wird empfohlen, vorsichtig zu sein. Link zu AHR999 Escape Top Indicator: Eine Ergänzung zur AHR999 -Münzhortenindikatorin, die zur Ermittlung der Marktoberseite verwendet wird. Der aktuelle Wert beträgt 2,48 diese Woche

Welche sind die am häufigsten verwendeten Verschlüsselungsalgorithmen in PHP? Welche sind die am häufigsten verwendeten Verschlüsselungsalgorithmen in PHP? May 12, 2023 pm 06:51 PM

Mit der Entwicklung des Internets ist die Datensicherheit zu einem ernsten Thema geworden, dem wir bei unserer täglichen Arbeit Aufmerksamkeit schenken müssen. Besonders wichtig wird die Verschlüsselung, wenn es um sensible persönliche Informationen oder Geschäftsdaten geht. In der PHP-Entwicklung werden einige Verschlüsselungsalgorithmen häufig verwendet. Werfen wir einen Blick auf die in PHP häufig verwendeten Verschlüsselungsalgorithmen. 1. Base64-Kodierung Die Base64-Kodierung wird häufig zur Übertragung von Binärdaten in Webseiten oder E-Mails verwendet, da Webseiten oder E-Mails nur Daten vom Typ Zeichenfolge und keine Binärdaten direkt übertragen können. Base64 ist eine Lösung

See all articles