位置: 编程技术 - 正文

浅谈选择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中自增)

  • 生产调味料用什么手续
  • 企业发生的哪些成本可以在企业所得税税前扣除
  • 银行存款余额调节表编制
  • 什么时候贷主营业务成本
  • 累计个税是每年累计吗
  • 企业是否可以查员工亲属关系
  • 收到税务局附加税退税税款的分录
  • 支票上哪里填付款人账号
  • 个人劳务费增值税如何缴纳
  • 应收账款售让会计分录怎么写?
  • 机票退票账务处理
  • 租别人厂房土地税房产税怎么交
  • 企业发生的现金折扣应计入
  • 单位收到增值税专用开票人写管理员
  • 节假日加班工资是平时的几倍?
  • 分期收款发出商品属于什么科目
  • 差额增值税计算公式
  • Win11怎么自定义鼠标指针图案
  • 内部控制制度包括哪些基本内容?
  • 投入资本回报率是总资产报酬率吗
  • 用后期进项抵欠怎么做账
  • 如何做好财务工作发言
  • 净现值法的优点包括
  • 现金流量表怎么编制
  • 远程桌面连接的用户名和密码在哪里看
  • 建筑企业总产值是什么
  • php推送微信公众号客户消息
  • linux中loop的含义
  • 销售产品应交的消费税分录
  • 明细分类账余额借贷怎么填
  • php图像
  • 培训公司要交哪些税
  • vuecli3创建项目的过程
  • php源码破解
  • 税务代开,开错了重开要多久?
  • 定额发票借给别人盖别人店的章可以吗
  • 撤销红字发票申请表
  • 合并报表长投和股本抵消后资产负债表怎么处理
  • FreeBSD安装xfce4: 鼠标不能用
  • mysql 执行动态语句
  • 应收应付票据包括什么
  • 企业捐赠自产产品的所得税处理
  • 期末留抵退税计算公式
  • 信用减值损失如何列报
  • 暂估成本分录怎么写
  • 材料估价入库发票收到如何记账
  • 现金收货款要填什么信息
  • 财务报表年报里面的利息费用怎么填
  • 不带息银行汇票
  • 银行交党费属于什么业务
  • 报废周转材料应负担的成本差异
  • 怎么接收电子承兑汇票
  • 无形资产摊销怎么做记账凭证
  • 体检收据可以入档案吗
  • 暂估的进项税额怎么抵扣
  • 固定资产的残值率是什么意思
  • 房屋装修费用的会计科目
  • sql必学必会
  • windows2008 2016
  • video for windows是什么
  • xp系统没有任何图标
  • 手把手教你如何退税
  • os x 10.10.5
  • win7中Windows Time时间服务错误1060怎么办?
  • win10新版磁贴
  • opengl es programming guide
  • javascriptcsdn
  • excel表限制
  • linux压缩tar文件命令
  • css样式表规则由什么组成
  • jquery model
  • 初步使用筷子而动作不规范的幼儿保育员应该
  • linux命令行怎么用
  • php常用函数200个
  • jQuery bt气泡实现悬停显示及移开隐藏功能的方法
  • jquery的实现原理
  • 国税干部任前谈心谈话
  • 怎么使用企业级app
  • 电子客票号码8768是什么
  • 地税是什么时候开始征收耕地的呢
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设