选择合适的MySQL存储引擎MyISAM存储引擎、InnoDB存储引擎和MEMORY存储

第34讲:MySQL中常用的几种存储引擎以及如何选择 在选择存储引擎时,应该根据应用系统的特点去选择合适的存储引擎,存储引擎没有好坏之分,最合适的就是最好用的,对于复杂的应系统,还可以根据实际情况选择多种的存储引擎组合使用。Memory存储引擎下表数据是存储在内存中的,可能会由于硬件的问题或者是断电的影响,就会导致数据丢失,因此只有当表是临时表或者缓存表的时候可以使用Memory存储引擎。InnoDB是一种兼顾可靠性和高性能的通用存储引擎,使用的最为广泛,在MySQL 5.5版本之后,InnoDB是默认的MySQL数据库存储引擎。 阅读详情

选择合适的MySQL存储引擎

MySQL 5.5

MyISAM存储引擎、InnoDB存储引擎和MEMORY存储引擎的应用场合和相应建议

存储引擎优缺点使用建议
MyISAM存储引擎MyISAM存储引擎不支持事务、也不支持外键,访问速度较快当对事务完整性没有要求并以访问为主的应用适合使用MyISAM存储引擎
InnoDB存储引擎

InnoDB存储引擎在事务上具有优势,即支持具有提交、回滚和崩溃恢复能力的事务安全,要比MyISAM存储引擎占用更多的磁盘空间

数据需要频繁的更新、删除操作。同时还对事务的完整性要求较高,并实现并发控制,此时需要使用InnoDB存储引擎

MEMORY存储引擎MEMORY存储引擎使用内存来存储数据,因此MEMORY存储引擎的数据访问访问速度较快,但安全上没有保证如果应用中涉及数据比较小,需要进行快速访问,则适合使用该存储引擎

 

 

 

 

 

 

 

 

 

 

存储引擎特性

特性MyISAMInnoDBMEMORY
存储限制有64TB有
事务安全不支持支持不支持
锁机制表锁行锁表锁
B树索引支持 支持支持
哈希索引不支持不支持支持
全文索引支持不支持不支持
集群索引不支持支持不支持
数据缓存 支持支持
索引缓存支持支持支持
数据可压缩支持不支持不支持
空间使用低高N/A
内存使用低高中等
批量插入的速度高低高
支持外键不支持支持不支持

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

查询默认存储引擎

show variables like 'storage_engine%';
+----------------+--------+
| Variable_name  | Value  |
+----------------+--------+
| storage_engine | InnoDB |
+----------------+--------+
1 row in set (0.00 sec)

执行结果显示,InnoDB存储引擎为默认存储引擎 

查看当前数据库支持的存储引擎

show engines;
+--------------------+---------+------------------------------------------------------------+--------------+------+------------+
| Engine             | Support | Comment                                                    | Transactions | XA   | Savepoints |
+--------------------+---------+------------------------------------------------------------+--------------+------+------------+
| CSV                | YES     | CSV storage engine                                         | NO           | NO   | NO         |
| PERFORMANCE_SCHEMA | YES     | Performance Schema                                         | NO           | NO   | NO         |
| FEDERATED          | NO      | Federated MySQL storage engine                             | NULL         | NULL | NULL       |
| MyISAM             | YES     | MyISAM storage engine                                      | NO           | NO   | NO         |
| MRG_MYISAM         | YES     | Collection of identical MyISAM tables                      | NO           | NO   | NO         |
| InnoDB             | DEFAULT | Supports transactions, row-level locking, and foreign keys | YES          | YES  | YES        |
| MEMORY             | YES     | Hash based, stored in memory, useful for temporary tables  | NO           | NO   | NO         |
+--------------------+---------+------------------------------------------------------------+--------------+------+------------+
7 rows in set (0.00 sec)

其中Engine参数表示存储引擎名称;

Support参数表示MySQL数据库管理系统是否支持该存储引擎,YES表示支持,NO表示不支持

XA参数表示存储引擎所支持的分布式是否符合XA规范,YES表示支持,NO表示不支持

Savepoints参数表示存储引擎是否支持事务处理中的保存点,YES表示支持,NO表示不支持

 

show variables like 'have%';
+----------------------+----------+
| Variable_name        | Value    |
+----------------------+----------+
| have_compress        | YES      |
| have_crypt           | YES      |
| have_csv             | YES      |
| have_dynamic_loading | YES      |
| have_geometry        | YES      |
| have_innodb          | YES      |
| have_ndbcluster      | NO       |
| have_openssl         | DISABLED |
| have_partitioning    | YES      |
| have_profiling       | YES      |
| have_query_cache     | YES      |
| have_rtree_keys      | YES      |
| have_ssl             | DISABLED |
| have_symlink         | YES      |
+----------------------+----------+
14 rows in set (0.00 sec)

Variable_name 参数表示存储引擎的名字

Value的值YES表示支持,NO表示不支持

【机器学习入门】1.4 吃透这些基本术语,才算真正入门 本文通过"挑西瓜"的生活案例,形象解释了机器学习的基本术语。样本对应单个西瓜,特征如色泽、根蒂等是观察维度,特征值是其具体表现,标签是西瓜的好坏判断。数据集是样本集合,特征向量是样本的数学表达,特征空间是所有可能的样本组合。文章强调数据集需划分为训练集、验证集和测试集,以评估模型的泛化能力。最后整理了术语对照表,并解答了常见问题。这些基础概念是理解机器学习的关键,建议读者重点掌握。 阅读详情

相关推荐

【Unity】入门教程第一期-下载安装Unity编辑器(下)

讲解如何在Unity Hub中下载Unity编辑器以及IED环境

Xiaoxin的博客 2040

[ MySQL ] 解决办法:3161 - Storage engine MyISAM is disabled (Table creation is disallowed).

问题描述:初始化数据库创建表时出现如下错误: 错误代码:3161 3161 - Storage engine MyISAM is disabled (Table creation is disallowed). 此错误也经常出现在阿里云RDS数据库与本地数据库数据互相迁移过程中 原因分析:MySQL在8.0以后不在支持MyISAM 引擎,默认的支持引擎为:InnoDB,MySQL官方的说明: In MySQL 8.0, it is normally necessary to use ENGINE to

我在山城重庆,我希望能为这片软件沙漠地带贡献自己的一滴水,Stay tuned! 1万+

uniapp [微信小程序] - 详解微信小程序端接入mqtt全流程及示例源码教程,uniApp微信小程序端如何接入MQTT插件并实现连接/断开+发布订阅+消息队列+离线重连等各种示例代码(开箱即用)

uniapp微信小程序接入MQTT,uniapp中使用mqtt,uniapp 微信小程序端接入mqtt示例代码教程,适用于微信小程序的MQTT插件,uniapp开发微信小程序连接mqtt,uniApp微信小程序接入MQTT协议,uniapp vue3微信小程序使用MQTT的小例子接入流程,使用uniapp开发小程序接入mqtt,如何在uniapp项目中使用mqtt,uniapp mqtt的使用示例,mqtt连接报错,如何在项目里集成mqtt,Mqtt协议,主动连接mqtt,订阅消息,实现发布,订阅和接收消息

🏆 前端领域优质创作者 2881

Storage engine MyISAM is disabled (Table creation is disallowed)

1、使用指令找出那些表是MyISAM引擎(MySQL在8.0以后不在默认支持MyISAM 引擎)在开发中,需要把mysql5.7的数据库,迁移到mysql8.0 的阿里云数据库上。2、使用指令修改引擎即可。

忘忧的博客 2046

SAP 物料主数据 Forecasting 视图,别把预测只当成一个数字字段

摘要(150字): SAP S/4HANA物料主数据的Forecasting视图常被忽视,但对依赖历史消耗规律的物料至关重要。该功能基于工厂维度的历史消耗数据,结合预测参数自动计算未来需求,动态调整重订货点和安全库存。预测模板(Forecast Profile)能标准化参数设置,而消耗数据(Consumption Values)的质量直接影响预测结果。预测值作为MRP输入,需注意保存操作才能生效。自动重订货点功能通过分析消耗波动和服务水平,实现库存策略的动态优化。Individual Forecast功能则

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1432

解锁机器人动态平衡算法:从原理到实践

机器人的动态平衡,是指机器人在运动过程中,面对各种复杂的动态变化和外界干扰,依然能够维持稳定状态,不发生倾倒或失去控制的能力。它就像是一位技艺精湛的舞者,在舞台上翩翩起舞时,无论做出多么复杂的动作,都能巧妙地调整身体姿态,始终保持平衡,展现出优美的舞姿。在实际应用中,机器人的动态平衡对于其稳定运行起着至关重要的作用。以双足机器人为例,当它行走在不平整的地面上时,地面的起伏会使机器人的重心不断发生变化。如果没有良好的动态平衡能力,机器人就很容易因为重心偏移而摔倒,无法完成行走任务。

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 3838

mysql error10231--mysql 8 storage engine myisam is disabled 错误解决

MySQL 8 版本默认使用 InnoDB 作为存储引擎,而 MyISAM 引擎在 MySQL 8 中已被弃用。当尝试使用或访问 MyISAM 引擎的表时,会出现 "storage engine myisam is disabled" 错误,错误代码为 10231。如果你只是想临时绕过这个错误,而不是永久更改存储引擎,可以在创建新表时指定使用 InnoDB:CREATE TABLE new_table_name (...) ENGINE=InnoDB;

bjwang的博客 893

MIKE水动力笔记7_实测数据与模型输出结果的拟合对比

上一博文【MIKE水动力笔记6】主要讲解如何自己制作实测数据的时间序列文件dfs0,而本博文讲解如何进行实测数据与模型输出结果的拟合对比。

晏长街的博客 1万+

数据库迁移:Storage engine MyISAM is disabled (Table creation is disallowed)

原因 低版本(我这是mysql 5.7->8.0)迁移至高版本,引擎不兼容问题。修改表的引擎 MyISAM->InnoDB。

小白菜 634

黑猫带你学eMMC协议第9篇:eMMC初始化过程(initial)

本文依据eMMC JEDEC5.1及个人工作经验整理而成,如有错误请留言。 文章为个人辛苦整理,付费内容,禁止私自转载。 文章所在专栏:《黑猫带你学:eMMC协议详解》 1 什么是emmc的初始化 对于小白来说,可能不太明白什么是emmc初始化。举个栗子:当你拿到一个电脑,接上电源,是不是就立马可以用了呢?并不是吧,你还需要去开机,等待电脑启动,配置完各种参数,等出现了电脑桌面,你才能用。那么同样,对于emmc芯片来说,也不是提供电源就能用了,需要输入各种命令后,让其进入到tran state后,才能正.

黑猫奥利奥的博客 6738

5 分钟上手 Kimi Work:安装、配置、跑通第一个任务

这篇文章提供了Kimi Work的快速入门指南,帮助用户在5分钟内完成从安装到运行第一个任务的全过程。主要内容包括: 安装步骤: macOS用户下载.dmg文件并拖入Applications Windows用户下载.exe安装包,需注意中文路径问题 初始设置: 使用现有Kimi账号登录 检查任务配额和文件访问权限 首个任务推荐: 建议从简单的本地文件整理开始(如按类型分类桌面文件) 详细说明了任务执行流程和审批机制 常见问题: 计划生成卡顿的解决方法 文件无变化的排查步骤 进阶建议: 提供难度递增的后续任务

sg_knight的专栏 2772

mysql所有引擎级特点_MySQL常用存储引擎及特点

MySQL常用存储引擎及特点发布时间:2020-06-02 17:43:48来源:PHP中文网阅读:142作者:三月下文主要给大家带来MySQL常用存储引擎及特点,希望这些内容能够带给大家实际用处,这也是我编辑MySQL常用存储引擎及特点这篇文章的主要目的。好了,废话不多说,大家直接看下文吧。一、MySQL常用存储引擎及特点1、InnoDB存储引擎从MySQL5.5版本之后,MySQL的默认内置存...

weixin_39565021的博客 462

【自适应滤波】自适应UKF,基于新息自适应调节Q和R,场景为雷达跟踪与滤波、MATLAB实现

本文提出了一种基于新息协方差匹配的自适应UKF(CM-AUKF)算法,用于解决噪声统计未知或时变场景下的目标跟踪问题。通过实时调整过程噪声协方差Q和观测噪声协方差R,CM-AUKF显著提升了跟踪精度和稳定性。仿真结果表明,相比传统UKF,CM-AUKF在位置和速度估计误差上分别降低了约50%和30%,且无需人工调参。该算法适用于无人机导航、雷达跟踪等动态环境,MATLAB代码可直接运行复现结果。自适应曲线显示算法能有效收敛到真实噪声参数,验证了其自适应能力。

985工科博士毕业,专攻定位、导航和滤波等算法研究。从业10年,主要使用MATLAB 329

mysql存储引擎

数据库存储引擎 数据库存储引擎是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建、查询、更新和删除数据。不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎,还可以获得特定的功能。现在许多不同的数据库管理系统都支持多种不同的数据引擎。 因为在关系数据库中数据的存储是以表的形式存储的,所以存储引擎也可以称为表类型(Table Type,即存储和操作此表...

yjclsx的博客 7万+

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Mysql 存储引擎的区别和比较

**MyISAM存储引擎** MyISAM基于ISAM存储引擎,并对其进行扩展。它是在Web、数据仓储和其他应用环境下最常使用的存储引擎之一。MyISAM拥有较高的插入、查询速度,但不支持事务。MyISAM主要特性有: 1、大文件(达到63位文件长度)在支持大文件的文件系统和操作系统上被支持。 2、当把删除和更新及插入操作混合使用的时候,动态尺寸的行产生更少碎片。这要通过合并相邻被删除的块,以

zgrgfr的博客 2万+

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

什么是存储引擎以及MySQL常见的三种数据库存储引擎

服务器需要足够的内存来维持所在的在同一时间使用的MEMORY表,当不再需要MEMORY表的内容时,要释放被MEMORY表使用的内存,应该执行 DELETE FROM或 TRUNCATE TABLE,或者删除整个表(使用DROP TABLE)。用户可以根据不同的需求为数据表选择不同的存储引擎,用户也可以根据自己的需要编写自己的存储引擎。如果是组合索引,也必须是组合索引的第一列,但是对于MyISAM表,自动增长列可以是组合索引的其他列,这样插入记录后,自动增长列是按照组合索引到前面几列排序后递增的。

m0_73766712的博客 1784

数据库存储引擎—InnoDB,MyISAM,Memory

数据库存储引擎—InnoDB,MyISAM 存储引擎 首先,什么是存储引擎: Mysql用各种不同的存储技术,将数据存储到文件或内存中。数据库存储引擎是数据库的底层的软件组件,数据库可以使用数据存储引擎进行创建,查询,更新和删除数据的操作。不同的存储引擎会提供不同的存储机制,索引技巧,锁定水平等功能,现在许多的数据库管理系统都支持多种的不同的存储引擎。 首先这里说的是MySQL内的存储引擎,他有许多的存储引擎,但是使用的比较多的还是InnoDB,MyISAM,Memory这三个。 我们可以在my

m0_46540897的博客 2250

知识篇 | MySQL常用存储引擎MyISAM、InnoDB和MEMORY之介绍

MySQl的存储引擎有哪9种,使用show engines;命令即可查看。 今天介绍常用的三种常用存储引擎:MyISAM、InnoDB和MEMORY。 一**、MyISAM** MyISAM基于ISAM存储引擎,并对其进行扩展。它是在Web、数据仓储和其他应用环境下最常使用的存储引擎之一。MyISAM拥有较高的插入、查询速度,但NO事物。使用这个存储引擎,每个MyISAM在磁盘上存储成三个文件: (1)frm文件:存储表的定义数据 (2)MYD文件:存放表具体记录的数据 (3)MYI文件:存储索引 frm

db_murphy的博客 1468

数据库的引擎选择(InnoDB、MyISAM、Memory)

数据库的引擎选择(InnoDB、MyISAM、Memory)

m0_65656149的博客 953

Mysql的存储引擎

一、引子 前些日在修改bug的时候涉及到了一个问题,就是当我在数据库中删除一个常量的时候,显示删除错误。后究其原因,发现是级联删除出现了问题,由于我当初建表的时候,选择的存储引擎是默认的INNODB,所以每当我删除的时候,因为存在外键,导致无法删除。随后,找到了解决措施,就是将我建表时的存储引擎从INNODNB改为MyISAM,后来删除问题就解决了。因此,在我寻求解决措施的时候,同时去了解了Mysql不同存储引擎的区别。 二、有关Mysql存储引擎的概述 和大多数的数据库不同, MySQL中有一个存储引擎的

Labra1的博客 574

mysql 表类型和存储引擎

41 mysql 表类型和存储引擎 41.1 基本介绍 MySQL的表类型由存储引擎(Storage Engines)决定,主要包括 MyISAM、innoDB、Memory等。 MySQL 数据库主要支持六种类型,分别是:CSV、Memory、ARCHIVE、MRG_MYISAM、MYISAM、InnoDB。 这六种又分为两类,一类是 “事务安全型”(transaction-safe),比如:InnoDB;其余都属于第二类,称为 “非事务安全型”(non-transaction-safe)【myisam

要学就学灰太狼的博客 1014

MySQL的表类型的(存储引擎)的选择MyISAM+InnoDB+MEMORY+MERGE

MySQL的表类型的(存储引擎)的选择MyISAM+InnoDB+MEMORY+MERGE

江说江湖专栏:欠世界一个伟大的产品! 1578

MySQL存储引擎(表类型)的选择

一、MySQL存储引擎概述      MySQL与多数数据库不同的是包含存储引擎这一特性,用户可以根据应用的需要选择合适的存储引擎来使存储和索引数据,以及是否使用事务等。MySQL5.0支持的存储引擎包括MyISAM、InnoDB、BDB、MEMORY、MERGE、EXAMPLE、NDB Cluster、ARCHIVE、CSV、BLACKHOLE、FEDERATED等。其中InnoDB和BDB提...

Calvin的博客 3448

MySQL 存储引擎对比:InnoDB vs MyISAM vs Memory

则专注于高速数据存取,适用于缓存和临时数据。根据应用场景和业务需求,合理配置存储引擎,能在性能和可靠性之间达到良好的平衡。希望本文的对比分析能帮助你更好地理解 MySQL 存储引擎,并在实际项目中做出最佳选择。在 MySQL 中,不同的存储引擎为不同应用场景提供了针对性优化。,从功能特性、性能、事务支持、锁机制以及适用场景等方面展开讨论,帮助你在项目中做出更合适的选择。了解和选择合适的存储引擎是优化 MySQL 性能的重要一环。提供了完善的事务处理和高并发支持,是大多数应用的首选;

梦想家星空的博客 1038

MySQL存储引擎的种类和使用场景

MyISAM:适合修改比较少,访问比较多的表

淡泊以明志,宁静以致远 1073

浅谈mysql数据库存储引擎的选择

上个月在面试时被问到数据库存储引擎的选择问题,不是很清楚。恰巧今日看书时看到了这一块,正好来总结下。如有不足,还望大神斧正。 (1)什么是存储引擎 Mysql中的数据都是用各种不同的技术存储在文件(或内存中的)。这些技术中的每一个技术会使用不同的存储机制、索引技巧等。我们应该根据应用的不同需求,来选择合适的存储引擎,从而改善应用的整体功能。 例如,在研究大量的临时数据,你也许需要使用内存存储

Xuhang_HHHH的博客 4046

mysql存储引擎及比较

InnoDB通过聚簇索引、事务支持、行级锁和MVCC等技术提供了高性能和高可靠性的数据管理,适合于需要高并发和事务支持的应用。而MyISAM以其简单高效的非聚簇索引结构和表级锁定机制,适合于读密集型、不需要事务支持的应用场景。不同的存储引擎有着不同的特性、优势和限制,适用于不同的应用场景。要深入理解数据库存储引擎的原理,我们需要从几个关键方面来探讨:数据存储结构、索引机制、事务处理、并发控制和数据恢复。选择合适的存储引擎需要根据应用的具体需求,考虑事务支持、并发需求、数据恢复能力和存储效率等因素。

坚定目标,超越自我 1845
上一篇: MySQL从创建数据库到删库跑路之旅
下一篇: MySQL的数据类型及其选择建议
崔凯洋
博客等级 码龄6年 26粉丝 132原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值