MyISAM 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
MyISAM 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
MyISAM 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」 !
MyISAM 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」「最积极运营项目」 !
MyISAM 获得 2020 年度 OSC 中国开源项目评选「最积极运营项目」 !
授权协议 GPL
开发语言 C/C++
操作系统 跨平台
软件类型 开源软件
开源组织
地区 不详
投 递 者 红薯
适用人群 未知
收录时间 2011-03-13

软件简介

MyISAM 是 MySQL 默认的存储引擎。它基于更老的ISAM代码,但有很多有用的扩展。(注意MySQL 5.1不支持ISAM)。 每个MyISAM在磁盘上存储成三个文件。第一个文件的名字以表的名字开始,扩展名指出文件类型。.frm文件存储表定义。数据文件的扩展名为.MYD (MYData)。

展开阅读全文

评论 (0)

加载中
更多评论
暂无内容
发表了博客
2019/08/04 20:38

MyISAM

MyISAM:默认表类型,它是基于传统的ISAM类型,ISAM是Indexed Sequential Access Method (有索引的顺序访问方法) 的缩写,它是存储记录和文件的标准方法。不是事务安全的,而且不支持外键,如果执行大量的select,insert MyISAM比较适合。 表锁差异 myisam只支持表级锁,用户在操作myisam表时,select,update,delete,insert语句都会给表自动加锁,如果加锁以后的表满足insert并发的情况下,可以在表的尾部插入新的数据。也可...

0
0
发表于数据库专区
2015/11/19 11:09

MyISAM

在MySQL5.1 及以前的版本,MyISAM是默认的存储引擎MyISAM提供大量的特性,包括全文索引、压缩、空间函数(GIS)等,但MyISAM 不支持事务和行级锁,而且有一个毫无疑问的缺陷就是崩溃后无法安全恢复。读取时会对需要读到的所有表加共享锁,写入时加排它锁。但是在表有读取查询的同时,也可以往表中插入新的记录。(并发插入) select count(*) from XXX 速度 优胜于其他存储引擎。慎用...

0
0
发表于数据库专区
2014/08/08 17:30

学习MyISAM

myisam是isam的mysql扩展.除非修改配置,一般来说myisam是默认的存储引擎. 只能够进行表锁,不支持行锁。在进行读取操作时不会影响到其他用户其他的读取操作,因而有比较好的并发性。但是在执行写入操作时,会产生一个“排他锁”,其他用户的的读写操作都无法执行。因此如果一张表的查询很慢,经常发生等待,可能不是因为查询语句有问题执行比较慢,而是因为这张表同时执行了大量的写操作。总结起来,读操作和读操作之间是并行的...

0
0
发表于数据库专区
2015/07/19 09:42

MyISAM 特征

1、锁和并发 MyISAM对整个表上锁,而不是行。在做查询时允许对同一个表进行插入操作。 2、恢复 MySQL支持人工或者自动检查修复MyISAM数据表。这里的修复和事务恢复不同,并且很慢。CHECK TABLE mytable和REPAIR TABLE mytable分别可以检查错误和修复数据表。 3、索引 支持全文索引。 4、键值延迟写入 拥有DELAY_KEY_WRITE创建选项的MyISAM表在一条查询完成后并不把改变的索引数据直接写入到硬盘,MyISAM缓存这些变化。当我们需要...

0
0
发表于数据库专区
2014/06/27 09:39

MyISAM静态

如果所有列都是静态的(即不使用xBLOB、xTEXT、VARCHAR数据类型), mysql 就会使用静态MyISAM格式。这种类型的表性能非常高,因为访问以预定义格式存储的数据时开销很低,而且最不可能出现因数据损坏而失败的情况。 但是这项有点要以空间为代价,因为每列都需要分配给最大空间,即使该空间没有被真正使用。

0
0
发表于数据库专区
2014/06/27 09:51

MyISAM动态

如果有列(即使只有一列)使用(xBLOB、xTEXT、VARCHAR), MYSQL就会自动使用动态格式。 MyISAM动态格式占用的空间比静态少,但是空间的节省导致了性能的下降。 原因:如果某个字段的内容发生改变,则其位置很可能需要移动,这将导致碎片的产生。 随着数据集中碎片的增加,数据访问性能就会相应降低。 解决办法: 1.尽量使用静态数据类型 2.经常使用 语句,她会整理表的碎片,恢复由于表更新和删除导致的空间丢失。...

0
0
发表了博客
2020/08/05 15:11

MyISAM存储引擎

MySQL引擎之MyISAM MyISAM引擎作为MYSQL5.5版本之前的默认存储引擎 MyISAM管理非事务表、是ISAM 的扩展格式,成功创建表后将会生成MYD(数据文件)和MYI(索引文件)两个文件 除了提供ISAM里所没有的索引的字段管理等的大量功能、MyISAM 还使用一种表格锁定的机制、来优化多个并发的读写操作。MyISAM 提供高速存储和检索、以及全文搜索能力 什么是锁 锁主要作用是管理共享资源的并发访问 锁用于实现事务的隔离性 锁的类型 共享锁(也...

0
0
发表了博客
2019/04/10 10:10

MyISAM加锁分析

为什么加锁 你正在读着你喜欢的女孩递给你的信,看到一半的时候,她的好闺蜜过来瞄了一眼(假设她会隐身术,你看不到她),她想把“我很喜欢你”改成“我不喜欢你”,刚把“很”字擦掉,“不”字还没写完,只写了一横一撇,这时候你正读到这个字,她怕你察觉到也就没继续往下写了,这时候你读到的这句话就是“我丆喜欢你”,这是什么鬼?!这位闺蜜乐了:没错,确实是鬼在整蛊你呢,嘿嘿! 数据库也会闹鬼吗?很有可能!假设会话...

0
0
发表于数据库专区
2014/03/26 14:19

MyISAM 表级锁

表级锁:开销小,加锁快;不会出现死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低。 查询表级锁争用情况 可以通过检查table_locks_waited和table_locks_immediate状态变量来分析系统上的表锁定争夺: 如果Table_locks_waited的值比较高,则说明存在着较严重的表级锁争用情况。 mysql> show status like 'table%'; +-----------------------+-------+ | Variable_name         | Value | +----------------...

0
1
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了问答
2013/08/05 15:19

mysql 数据导入及格式的问题?

今天学习MySQL的时候下载了一个employees_db-full-1.0.6.tar.bz2这个示例数据库,我的系统是Linux,MySQL版本是5.1.69,所以数据库默认存储引擎是MyIsam,但是导入数据库后在数据目录下只有.frm文件,没有.MYD和.MYI文件,我查看了一下表的定义,发现其存储引擎是Innodb,更改存储引擎为Myisam后就出现了MYI和MYD文件。问题是:为什么存储引擎定义为innodb却存储为.frm,它的数据存哪去了?...

9
0
发表了问答
2010/12/22 16:07

一个库既有innodb,也有myisame,如下方案热备份行不?

因为我一个库中既有innodb表,也有myisam表,现在要做每天全备份。现在机器结构是一主一从,我在从库做全备份。 考虑到库中既有innodb表,也有myisam表,我的方案是先停掉从库SQL_THREAD线程,然后再全备份,备份完后再再开启 SQL_THREAD线程。请问这个方案可行性高不?还有其他的方案吗?如果以后要实现多主一从,那全备份策略该是怎么样的呢? 请大家提些建议。 脚本部分代码如下: stop_sqlthread="stop slave SQL_THREAD;" ...

2
1
发表了问答
2012/03/15 18:21

奇怪的结果,测试MyIsam和InnoDB的查询速度,MyIsam<InnoDB

13000条数据 查询语句:“select * from user where id>0 limit 60*20, 20" MyISAM时间:2422ms InnoDB时间:678ms +----------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +----------+-------------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | username | varchar(50) | NO | | NULL | | | password |...

9
1
发表了问答
2010/03/15 11:46

MyISAM和Innodb比较

浅谈MySQL存储引擎 InnoDB和MyISAM 以及行锁注意事项 2010-02-21 18:21 MyISAM 是MySQL中默认的存储引擎,一般来说不是有太多人关心这个东西。决定使用什么样的存储引擎是一个很tricky的事情,但是还是值我们去研究一下,这里的文章只考虑 MyISAM 和InnoDB这两个,因为这两个是最常见的。 下面先让我们回答一些问题: ◆你的数据库有外键吗? ◆你需要事务支持吗? ◆你需要全文索引吗? ◆你经常使用什么样的查询模式? ◆你的...

3
22
发表了问答
2011/02/16 10:31

使用 low-priority-updates 参数进行 MyISAM 的锁调度

MyISAM存储引擎的读锁和写锁是互斥的,读写操作是串行的。那么,一个进程请求某个 MyISAM表的读锁,同时另一个进程也请求同一表的写锁,MySQL如何处理呢?答案是写进程先获得锁。不仅如此,即使读请求先到锁等待队列,写请求后 到,写锁也会插到读锁请求之前!这是因为MySQL认为写请求一般比读请求要重要。这也正是MyISAM表不太适合于有大量更新操作和查询操作应用的原 因,因为,大量的更新操作会造成查询操作很难获得读锁,从...

2
2
发表了问答
2011/06/20 11:48

InnoDB还是MyISAM 再谈MySQL存储引擎的选择

两种类型最主要的差别就是Innodb 支持事务处理与外键和行级锁。而MyISAM不支持.所以MyISAM往往就容易被人认为只适合在小项目中使用。 我作为使用MySQL的用户角度出发,Innodb和MyISAM都是比较喜欢的,但是从我目前运维的数据库平台要达到需求:99.9%的稳定性,方便的扩展性和高可用性来说的话,MyISAM绝对是我的首选。 原因如下: 1、首先我目前平台上承载的大部分项目是读多写少的项目,而MyISAM的读性能是比Innodb强不少的。 ...

28
9
发表了问答
2012/03/16 10:46

在MySQL 5.0里面,MyISAM和InnoDB存储引擎性能差别并不是很大

MySQL中MyISAM引擎与InnoDB引擎性能比较,基本上我们可以考虑使用InnoDB来替代我们的MyISAM引擎。 MySQL表结构 CREATE TABLE `myisam` ( `id` int(11) NOT NULL auto_increment, `name` varchar(100) default NULL, `content` text, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=gbk; CREATE TABLE `innodb` ( `id` int(11) NOT NULL auto_increment, `name` varchar(100) default NULL, `content` te...

3
3
发表了问答
2008/12/18 09:50

MySQL中MyISAM引擎与InnoDB引擎性能简单测试

http://www.builder.com.cn/2008/0218/738280.shtml

1
0
发表了问答
2011/07/19 21:26

【求助】myisam类型的数据库如何添加数据表

最近在做一个电子商务的网站,用的是ecshop,想在上面添加自己的功能,在原先的数据库中添加自己的表时,发现ecshop的数据库存储引擎是默认的myisam,不支持外键。 这 样我就有了疑惑,不支持外键的话,那他的表与表的联系是怎么形成的?我用powerdesigner逆向工程生成了物理数据模型,发现他们的表没有联系关 联上,真的是这样吗?不过我发现很多表里面除了pk主键外,还多了挺多ak的。这究竟是什么回事,我要怎么样才可以添加进...

9
0
发表了问答
2010/03/07 22:26

MySQL: MyISAM和InnoDB的区别

InnoDB和MyISAM是在使用MySQL最常用的两个表类型,各有优缺点,视具体应用而定。基本的差别为:MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持。MyISAM类型的表强调的是性能,其执行数度比InnoDB类型更快,但是不提供事务支持,而InnoDB提供事务支持已经外部键等高级数据库功能。 MyIASM是IASM表的新版本,有如下扩展: 二进制层次的可移植性。 NULL列索引。 对变长行比ISAM表有更少的碎片。 支持大文件。 更好的索引压...

3
10
发表了问答
2011/04/05 07:51

MySQL的myisam解决并发读写解决方法

mysql的myisam解决并发读写解决方法MyISAM在读操作占主导的情况下是很高效的。可一旦出现大量的读写并发,同InnoDB相比,MyISAM的效率就会直线下降,而且,MyISAM和InnoDB的数据存储方式也有显著不同:通常,在MyISAM里,新数据会被附加到数据文件的结尾,可如果时常做一些 UPDATE,DELETE操作之后,数据文件就不再是连续的,形象一点来说,就是数据文件里出现了很多洞洞,此时再插入新数据时,按缺省设置会先看这些洞洞的大小是...

3
7
发表了问答
2011/01/25 16:48

MySQL多表查询时的存储引擎选择问题

是MyISAM的效率高呢 还是InnoDB加上外键关联后的效率高呢

6
2
发表了问答
2011/01/17 09:50

红薯老大,本站貌似使用的是MyISAM引擎么?问个小问题

MyISAM不支持事务,如何回滚呢? 红薯老大是如何解决的?

16
1
发表了问答
2010/12/18 10:32

使用mysql5.5的DBA们注意了

mysql5.5不再支持形如: TYPE=MyISAM CHARACTER SET utf8 的语法 而改为: engine=MyISAM CHARACTER SET utf8 如果你使用了老的语法,肯定语法错误,如果你有sql文件批量导入,请自行修改相关关键字。

1
2
发表了问答
2009/12/30 21:54

MySQL: InnoDB 还是 MyISAM?

MyISAM 是MySQL中默认的存储引擎,一般来说不是有太多人关心这个东西。决定使用什么样的存储引擎是一个很tricky的事情,但是还是值我们去研究一下,这里的文章只考虑 MyISAM 和InnoDB这两个,因为这两个是最常见的。 下面先让我们回答一些问题: 你的数据库有外键吗? 你需要事务支持吗? 你需要全文索引吗? 你经常使用什么样的查询模式? 你的数据有多大? 思考上面这些问题可以让你找到合适的方向,但那并不是绝对的。如果你...

4
3
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
0 评论
9 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部