MySQL存储引擎-MyISAM

MyISAM是MySQL<5.5的默认存储引擎,不支持事务但访问速度快,采用表级锁,不支持外键。其特点是文件存储、读写互阻、支持全文索引,适用于非事务性、只读性和空间性应用。表损坏可修复,支持数据压缩。然而,存在表大小限制,在早期版本中为4GB,但在5.0及以上版本可达到256TB。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

概述

MySQL<5.58默认的存储引擎,不支持事务,支持表级锁,非聚集索引[B-Tree索引,R-Tree索引(空间数据索引),Full-text索引(全文索引)],不支持外键,访问速度快

特性

    1.不支持事物
    2.文件存储方式

       

        在三个文件中

      , 一个MYD是MyISAM的专属文件 内容文件

        一个MYI是MyISAM的专属文件 索引文件

        一个frm所有引擎都有的是 表结构文件

    3.表级锁

        LOCK TABLES ceshi READ; #给ceshi表加锁

        SELECT * FROM ceshi; #查询数据

       INSERT INTO ceshi(ip,uid) VALUES('127.0.0.1',1); #插入数据

       UPDATE ceshi SET ip='127.0.0.1' WHERE id=1; #修改数据

       DELETE FROM ceshi WHERE id=1; #删除数据

       ALTER TABLE ceshi DROP COLUMN uid; #删除表字段

       当给ceshi表加锁之后,增删改和修改表结构都不能操作, 否则提示如下

    

      当给ceshi表加锁之后,其他的数据表也不能操作, 否则提示如下

    

 

        UNLOCK TABLES;//解除锁表
    4.读写互阻


    5.读取速度快

           没有事务,也没有行级锁外键,所以不用占取过多的内存和存储资源
    6.不支持外键,支持全文索引

        全文索引[MySQL<5.7唯一支持原生全文索引
 
    2.表损坏修复(check table 表名 检查是否有问题;repair table 表名  修复表)
    4.表支持数据压缩(myisampack,压缩之后不支持写的操作)


  限制


    表的大小    
    MySQL<5.0默认4GB
    MAX_Rows[最大行数],AVG_ROW_LENGTH[平均每行字节数]ALTER TABLE tbl_name MAX_ROWS=1000000000 AVG_ROW_LENGTH=15000; 两个参数相乘就是表的大小
    MySQL>5.0默认256TB


  使用场景


    非事务性应用
    只读性应用
    空间性应用[地图,点(经纬度),线(无数点形成路线),无数线形成面]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值