zoukankan      html  css  js  c++  java
  • MylSAM引擎的特点及场景使用

    1.什么是mylSAM引擎

    MyISAM引擎是MySQL关系数据库管理系统的默认存储引擎(MySQL5.5版本以前)。这种MySQL
    表存储结构从旧的ISAM代码扩展出许多有用的功能。在新版本的MySQL中,InnoDB引擎由于其对事物参照完整性,以及更高的并发性等优点开始逐步的取代MyISAM引擎。
    小结:事物参照完整性可理解为数据的一致性。

    mylSAM引擎的特点:

    1、不支持事务(事务就是逻辑上的一组SQL语句操作,组成这组操作的各个SQL语句,执行时要么全部成功,要么全部失败)
    2、表级锁定(更新是锁整个表):其锁定机制是表级锁定,虽然可以让锁定的实现成本很小,但是大大的降低了其并发性能。
    小结:MyISAM锁定的范围太大
    3、读写互相堵塞:不仅会在写入的时候阻塞读取,MyISAM还会在读取的时候阻塞写入,但读本身并不会阻塞另外的读。
    4、只会缓存索引:MyISAM可以通过key_buffer_size缓存索引,大大提高访问性能,减少磁盘的I/O,但是缓存区只会缓存索引,不会缓存数据。
    5、读取速度较快,占用资源相对少。
    6、不支持外键约束,但支持全文索引。
    7、MyISQM引擎是mysql_5.5.5之前的索引。

     MyISAM引擎使用的场景

    1、不需要事务支持的业务(转账、充值、付款这种就不行)。
    2、一般为读数据比较多的应用。读写都频繁的不适合,读多或写多都适合。
    3、并发访问相对低的业务(纯读、纯写高并发也可以)。
    4、数据修改相对较少的业务(阻塞问题)。
    5、以读为主的业务,例如:www,blog,图片信息数据库,用户数据库,商品库等业务。
    6、对数据一致性要求不是很高的业务。
    7、硬件资源比较差的机器可以用MyISAM。
    小结:单一对数据库的操作都可以使用MyISAM引擎

    本文转载地址https://blog.csdn.net/m0_37814112/article/details/78633136

  • 相关阅读:
    Python实现机器人聊天
    node.js使用express框架进行文件上传
    nginx让所有的http地址重定向到https
    nginx配置https
    vscode源码编译运行打包使其由英文变为中文
    阿里云配置tomcat https
    springboot打成的jar包如何在Linux上持久运行
    wordpress数据表分析
    DevExpress Components16.2.6 Source Code 重编译教程
    DataGridView绑定泛型List时,利用BindingList来实现增删查改
  • 原文地址:https://www.cnblogs.com/liurenli/p/10785312.html
Copyright © 2011-2022 走看看