mysql存储引擎ARCHIVE
mysql常用引擎MyISAM和InnoDB,前者插入快 查询快,后者修改快 支持事务,各有优缺点,在网上突然看到一个引擎叫ARCHIVE,还蛮特别的
这个引擎只允许插入和查询,不允许修改和删除。相当于拥有只读权限和写入权限,没有修改权限和删除权限。我突然想到这种东西有点类似于主从同步中的从库,但是又拥有写入权限,还是比较特殊的。
在一些固定死的配置中,可以用这个表,杜绝程序员或者运营等人的错误操作或者尝试修改。从根本上保证数据的安全性。当然了由于时代变化的太快了,需求 逻辑等等总是在变化,这种固定的东西很有可能受到前所未有的推翻和冲击,到时候确实需要改怎么办呢??
可以尝试将表引擎先修改为InnoDB引擎,然后修改 改好了之后再改为ARCHIVE引擎,问题是不要用索引,包括主键id等,这个表就用来存东西还是蛮好的。
这里摘抄一段别人对这个引擎的概述
文件系统存储特点:
以zlib对表数据进行压缩,磁盘I/O更少
数据存储在ARZ为后缀的文件中
Archiv存储引擎的特点
只支持insert和select操作(支持行级所和缓冲区,可以实现高并发的插入)
只允许在自增ID列上加索引
Archive表比MyISAM表要小大约75%,比支持事务处理的InnoDB表小大约83%。当数据量非常大的时候Archive的插入性能表现会较MyISAM为佳。
Archive表的性能是否可能超过MyISAM?答案是肯定的。根据MySQL工程师的资料,当表内的数据达到1.5GB这个量级,CPU又比较快的时候,Archive表的执行性能就会超越MyISAM表。因为这个时候,CPU会取代I/O子系统成为性能瓶颈。别忘了Archive表比其他任何类型的表执行的物理I/O操作都要少。
较小的空间占用也能在你移植MySQL数据的时候发挥作用。当你需要把数据从一台MySQL服务器转移到另一台的时候,Archive表可以方便地移植到新的MySQL环境,你只需将保存Archive表的底层文件复制过去就可以了。
作者:海贼之路飞
链接:https://www.jianshu.com/p/c18d4da0a827
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
懒得敲了,就引用一下别人的话吧。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 推荐几款开源且免费的 .NET MAUI 组件库
· 实操Deepseek接入个人知识库
· 易语言 —— 开山篇
· Trae初体验