(5)mysql常用存储引擎_MySQL
概述
??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表不会智能的将记录写到对应的表中,而分区表可以的。总结
仍一张表作为总结:

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Explorez le framework Canvas : Pour comprendre quels sont les frameworks Canvas couramment utilisés, des exemples de code spécifiques sont nécessaires. Introduction : Canvas est une API de dessin fournie en HTML5, grâce à laquelle nous pouvons obtenir des graphiques et des effets d'animation riches. Afin d'améliorer l'efficacité et la commodité du dessin, de nombreux développeurs ont développé différents frameworks Canvas. Cet article présentera certains frameworks Canvas couramment utilisés et fournira des exemples de code spécifiques pour aider les lecteurs à mieux comprendre comment utiliser ces frameworks. 1.Cadre EaselJSEa

Spring est un framework open source qui fournit de nombreuses annotations pour simplifier et améliorer le développement Java. Cet article expliquera en détail les annotations Spring couramment utilisées et fournira des exemples de code spécifiques. @Autowired : Autowired L'annotation @Autowired peut être utilisée pour câbler automatiquement les beans dans le conteneur Spring. Lorsque nous utilisons l'annotation @Autowired où les dépendances sont requises, Spring trouvera les beans correspondants dans le conteneur et les injectera automatiquement. L'exemple de code est le suivant : @Auto

Redmi a officiellement annoncé aujourd'hui que le nouveau Redmi GPro 2024 sortira officiellement le 4 mars. En d’autres termes, la semaine prochaine, nous aurons la sortie de ce nouveau produit passionnant. RedmiGPro2024 fait ses débuts en tant que produit phare de l'e-sport, intégrant profondément les capacités de l'industrie de la téléphonie mobile dans le secteur des ordinateurs portables, présentant une version super performante de 210 W et les performances de Redmi atteignant un nouveau sommet. Equipé d'un processeur i9-14900HX et d'une carte graphique RTX4060, il allie parfaitement e-sport et création pour réaliser une double évolution. De ce point de vue, les performances de ce nouveau produit seront encore améliorées et l'effet réel est passionnant. Il a été mentionné lors de l'échauffement officiel que le nouveau Redmi G Pro 2024 apporte la version PC du moteur violent. Autonomisation de la technologie de téléphonie mobile, trois facteurs majeurs conduisent

L'éclairage global en temps réel (Real-time GI) a toujours été le Saint Graal de l'infographie. Au fil des années, l’industrie a proposé diverses méthodes pour résoudre ce problème. Les méthodes courantes incluent la contrainte du domaine du problème en utilisant certaines hypothèses, telles que la géométrie statique, une représentation approximative de la scène ou le suivi de sondes approximatives, et l'interpolation de l'éclairage entre les deux. Dans Unreal Engine, la technologie globale du système d'éclairage et de réflexion Lumen a été fondée par Krzysztof Narkowicz et Daniel Wright. L'objectif était de créer une solution différente de ses prédécesseurs, capable d'un éclairage uniforme et d'une qualité d'éclairage semblable à celle d'un four. Récemment, au SIGGRAPH 2022, Krzysztof Narko

Le PNJ intelligent créé par l'académicien Huang dans « Cyberpunk 2077 » parle déjà chinois ? L'expérience directe de Qubit, voir des PNJ converser couramment en chinois et en anglais, avec des expressions et des mouvements naturels, et des formes de bouche assorties... S'il n'y avait pas d'écran devant moi, j'aurais vraiment l'impression d'y être. Lors du salon CES de cette année, Nvidia a utilisé son moteur intelligent Avatar Cloud Engine (ACE) pour rendre les PNJ du jeu « vivants », ce qui a provoqué un véritable choc. △Le PNJ intelligent présenté au CES utilise ACE. Les personnages du jeu peuvent avoir des conversations vocales réalistes avec les joueurs, tout en montrant des expressions et des mouvements corporels vifs sans avoir à préparer un script à l'avance. Au moment de ses débuts, il y avait Ubisoft, Tencent, NetEase, MiHoYo et d'autres pays.

Selon les informations du 8 octobre, le marché automobile américain subit un changement sous le capot. Les moteurs à six et huit cylindres, autrefois appréciés, perdent progressivement leur domination, tandis que les moteurs à trois cylindres font leur apparition. Les informations du 8 octobre ont montré que le marché automobile américain subit actuellement un changement sous le capot. Les moteurs à six et huit cylindres bien-aimés du passé perdent progressivement leur domination et le moteur à trois cylindres commence à émerger. Dans l'esprit de la plupart des gens, les Américains aiment les modèles de grande cylindrée et le « gros V8 américain ». a toujours été synonyme de voitures américaines. Cependant, selon des données récemment publiées par des médias étrangers, le paysage du marché automobile américain subit d’énormes changements et la bataille sous le capot s’intensifie. Il est entendu qu'avant 2019, les États-Unis

Analyse approfondie de l'indice d'évasion des 15 premiers Bitcoin: Perspectives du marché pour 2025 Cet article analyse profondément l'indice de bitcoin d'échappement couramment utilisé, parmi lequel le ratio Bitcoin Rhodl, l'USDT actuel de la gestion de patrimoine et le indice saisonnier d'Altcoin ont atteint l'indice d'évasion en 2024, attirant l'attention du marché. Comment les investisseurs devraient-ils faire face aux risques potentiels? Interprétons ces indicateurs un par un et explorons des stratégies de réponse raisonnables. 1. Explication détaillée des indicateurs clés AHR999 Indicateur de thésaurisation de pièces: créé par AHR999, aidant la stratégie d'investissement fixe Bitcoin. La valeur actuelle est de 1,21, qui se trouve dans la plage d'attente, donc il est recommandé d'être prudent. Lien vers AHR999 Escape Top Indicateur: Un supplément à l'indicateur de thésaurisation de monnaie AHR999, utilisé pour identifier le haut du marché. La valeur actuelle est de 2,48, cette semaine

Avec le développement d’Internet, la sécurité des données est devenue une question sérieuse à laquelle nous devons prêter attention dans notre travail quotidien. Le cryptage devient particulièrement important lorsqu'il s'agit d'informations personnelles sensibles ou de données professionnelles. Dans le développement PHP, certains algorithmes de chiffrement sont largement utilisés. Jetons un coup d'œil aux algorithmes de chiffrement couramment utilisés en PHP. 1. Encodage Base64 L'encodage Base64 est souvent utilisé pour transmettre des données binaires dans des pages Web ou des e-mails, car les pages Web ou les e-mails ne peuvent transmettre que des données de type chaîne et ne peuvent pas transmettre directement des données binaires. Base64 est une solution
