位置: 编程技术 - 正文

浅谈选择mysql存储引擎的标准(mysql可以存什么)

编辑:rootadmin

推荐整理分享浅谈选择mysql存储引擎的标准(mysql可以存什么),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:mysql存文章用哪个类型好,选择mysql的原因,mysql以什么方式存储,mysql如何选择数据库,mysql怎么存储的,在mysql中如何选择合适的数据类型,mysql使用什么存储引擎,在mysql中如何选择合适的数据类型,内容如对您有帮助,希望把文章链接给更多的朋友!

主要存储引擎的介绍

1、InnoDB存储引擎

InnoDB是MySQL的默认事务型引擎,它被设计用来处理大量的短期(short-lived)事务。除非有非常特别的原因需要使用其他的存储引擎,否则应该优先考虑InnoDB引擎。建议使用MySQL5.5及以后的版本,因为这个版本及以后的版本的InnoDB引擎性能更好。MySQL4.1以后的版本中,InnoDB可以将每个表的数据和索引存放在单独的文件中。这样在复制备份崩溃恢复等操作中有明显优势。可以通过在my.cnf中增加innodb_file_per_table来开启这个功能。如下: InnoDB采用MVCC来支持高并发,并且实现了四个标准的隔离级别。其默认级别是REPEATABLE READ(可重复读),并且通过间隙锁(next-key locking)策略防止幻读的出现。(事务和事务隔离级别是另一个大题目,各自网补吧)。 InnoDB是基于聚簇索引建立的,聚簇索引对主键查询有很高的性能。不过它的二级索引(secondary index,非主键索引)中必须包含主键列,所以如果主键列很大的话,其他的所有索引都会很大。因此表上的索引较多的话,主键应当尽可能的小。 InnoDB的存储格式是平台独立的,可以将数据和索引文件从Intel平台复制到Sun SPARC平台或其他平台。 InnoDB通过一些机制和工具支持真正的热备份,MySQL的其他存储引擎不支持热备份。

2、MyISAM存储引擎

MyISAM提供了大量的特性,包括全文索引、压缩、空间函数(GIS)等,但MyISAM不支持事务和行级锁,有一个毫无疑问的缺陷就是崩溃后无法安全恢复。 MyISAM会将表存储在两个文件在中:数据文件和索引文件,分别是.MYD和.MYI为扩展名。在MySQL5.0以前,只能处理4G的数据,5.0中可以处理T的数据。 在数据不再进行修改操作时,可以对MyISAM表进行压缩,压缩后可以提高读能力,原因是减少了磁盘I/O。

浅谈选择mysql存储引擎的标准(mysql可以存什么)

3、Archive引擎

Archive存储引擎只支持INSERT和SELECT操作,在MySQL5.1之前不支持索引。Archive表适合日志和数据采集类应用。Archive引擎支持行级锁和专用的缓存区,所以可以实现高并发的插入,但它不是一个事物型的引擎,而是一个针对高速插入和压缩做了优化的简单引擎。

几个常用存储引擎的特点

下面我们重点介绍几种常用的存储引擎并对比各个存储引擎之间的区别和推荐使用方式。

Notice: Undefined index: CMSdown in /data/webroot/gcms/lib/Api/Open/Article.php on line img////_ded9ab7.png" alt="查看图片" />

最常使用的2种存储引擎:Myisam是Mysql的默认存储引擎。当create创建新表时,未指定新表的存储引擎时,默认使用Myisam。每个MyISAM在磁盘上存储成三个文件。文件名都和表名相同,扩展名分别是.frm(存储表定义)、.MYD (MYData,存储数据)、.MYI (MYIndex,存储索引)。数据文件和索引文件可以放置在不同的目录,平均分布io,获得更快的速度。 InnoDB存储引擎提供了具有提交、回滚和崩溃恢复能力的事务安全。但是对比Myisam的存储引擎,InnoDB写的处理效率差一些并且会占用更多的磁盘空间以保留数据和索引。

如何选择合适的存储引擎

选择标准:根据应用特点选择合适的存储引擎,对于复杂的应用系统可以根据实际情况选择多种存储引擎进行组合。

下面是常用存储引擎的适用环境:MyISAM:默认的MySQL插件式存储引擎,它是在Web、数据仓储和其他应用环境下最常使用的存储引擎之一InnoDB:用于事务处理应用程序,具有众多特性,包括ACID事务支持。Memory:将所有数据保存在RAM中,在需要快速查找引用和其他类似数据的环境下,可提供极快的访问。Merge:允许MySQL DBA或开发人员将一系列等同的MyISAM表以逻辑方式组合在一起,并作为1个对象引用它们。对于诸如数据仓储等VLDB环境十分适合。

标签: mysql可以存什么

本文链接地址:https://www.jiuchutong.com/biancheng/348036.html 转载请保留说明!

上一篇:mysql不同数据库不同数据表导入数据

下一篇:两种mysql对自增id重新从1排序的方法(mysql中自增)

  • 电子税务局财务报表怎么更正申报
  • 材料暂估可以跨年度吗
  • 如何查询个人所有贷款记录
  • 疫情期间公司买水
  • 年终奖影响社保公积金基数吗
  • 免税是不是不用交税
  • 银行汇票可以异地跨行使用吗
  • 退去年的教育费附加
  • 个人所得税已申报税额合计是什么意思
  • 注册资本认缴与实缴会计如何做账
  • 运保佣是什么
  • 打官司赢了再付费叫什么
  • 营改增后超市陈列费账务处理
  • 营改增后营业外收入交增值税吗?
  • 易税是什么
  • 弥补以前年度亏损从哪里取数
  • 固定资产折旧年限及残值率
  • 待处理财产损益的二级科目
  • 增值税专用发票怎么开
  • 装修费怎么摊销,租期两年
  • 已认证的进项税额转出怎么做账务处理
  • 退税收入计入营业外收入吗
  • 怎么访问海康硬盘录像机
  • 网速检测工具
  • 现金流量表与资产负债表不符
  • 微信转账记录怎么加回好友?
  • linux更改指定用户的相关信息
  • avc格式是什么
  • 进程process
  • 融资性售后回租的账务处理
  • 免税货物增值税计算公式
  • 固定资产属于资产要素吗
  • npm无法将npm项识别为
  • vue3响应式丢失
  • webstorm功能
  • html/css/javascript
  • 未取得合法支付凭据和与本单位无关的收入
  • 其他机械和设备修理业包括哪些
  • 劳务报酬可以专项附加扣除吗
  • 刚开始考会计证有用吗
  • python poetry如何创建项目
  • 匿问我答查人
  • 小规模没有税控怎么开普票
  • 应交税费的分析应重点关注企业
  • 社保怎么缴费方式
  • mysql异常退出
  • 水电费的会计分录
  • 硕士研究生个税专项扣除
  • 技术服务费可以开专票吗
  • 转出未交增值税借方余额怎么处理
  • 企业所得税国税地税怎么分
  • 开销项负数的流程
  • 待处理财产损益是备抵类科目吗
  • 复式记账法主要有
  • MySQL slave_net_timeout参数解决的一个集群问题案例
  • 如何清除sql2008r2日志
  • win7系统设备管理器其他设备有个未知设备叹号
  • ubuntu16.04lts
  • ipad文件使用技巧
  • win10出现未知错误
  • centos最小化安装步骤
  • win8系统如何卸载软件
  • windows聚焦失效
  • win10更新2021年6月
  • win10如何打开ie8
  • jquery 限制文件大小
  • 项目总结之触摸问题分析
  • BUG: OpenGL error 0x0500 in -[CCEAGLView swapBuffers] 328
  • win10 putty
  • jquery获取滚动条位置
  • javascript中的函数包括内置函数和自定义函数
  • javascript ts
  • jquery拖拽插件
  • js生成二维数组
  • android view类
  • python 数据类型
  • js数组操作的常用方法有哪些
  • 现在开票可以不去税务局吗
  • 定额发票怎么查看有效期
  • 四川国税发票查验真伪
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设