相关疑难解决方法(0)

263
推荐指数
10
解决办法
27万
查看次数

InnoDB 或 MyISAM 哪个更快?

MyISAM 如何比 InnoDB“更快”,如果

  • MyISAM 需要为数据做磁盘读取吗?
  • InnoDB 对索引和数据使用缓冲池,而 MyISAM 只用于索引?

mysql innodb myisam storage-engine

59
推荐指数
3
解决办法
13万
查看次数

为什么 InnoDB 不存储行数?

每个人都知道,在使用 InnoDB 作为引擎的表中,诸如此类SELECT COUNT(*) FROM mytable的查询非常不准确且非常慢,尤其是当表变大并且在该查询执行时不断插入/删除行时。

据我了解,InnoDB 不会将行数存储在内部变量中,这就是导致此问题的原因。

我的问题是:为什么会这样?存储这样的信息有那么难吗?在许多情况下,这是一个重要的信息。我看到是否要实现这样的内部计数的唯一困难是当涉及事务时:如果事务未提交,您是否计算它插入的行数?

PS:我不是数据库方面的专家,我只是一个将 MySQL 作为一个简单爱好的人。因此,如果我只是问一些愚蠢的问题,请不要过分挑剔:D。

mysql innodb count

21
推荐指数
2
解决办法
8181
查看次数

最好的 MyISAM 和 InnoDB

由于 RAM 的限制,是否可以让 InnoDB 使用与 MyISAM 相同的索引而不是聚集索引,同时获得其并发性能的好处?

mysql innodb myisam performance index

17
推荐指数
1
解决办法
2万
查看次数

表级锁定的好处

MyISAM 存储引擎使用的表级锁定有什么好处?行级锁定有很多好处,比如并发更新和不锁定表的读取。

编辑 人们普遍认为表级锁定可以防止死锁。但是,以并发为代价来防止死锁如何值得呢?

mysql myisam deadlock locking

7
推荐指数
2
解决办法
7738
查看次数

选择哪个mysql存储引擎?

我很困惑我应该选择哪个 mysql 引擎(让我们谈谈最常用的:MyISAM 和 InnoDB)。

理论说:

  • 两者都适用于 BTree 索引,但 MyISAM 也可以使用 FULLTEXT 索引。
  • InnoDB 在数据完整性方面更加严格,而 MyISAM 则较为松散。
  • InnoDB 有事务,而 MyISAM 没有。
  • InnoDB 有外键和关系约束,而 MyISAM 没有。
  • MyISAM 读取速度更快,但写入速度更慢(我不确定这个)。

当我创建一个表时,如果我想保持完整性并且我想加快通过“文本”进行搜索的查询,我应该总是牺牲一些东西吗?

如果需要,您如何决定使用哪种引擎

  • 正直 ?
  • 速度 ?
  • 约束?
  • 按文字搜索?
  • 交易?

mysql innodb myisam storage-engine full-text-search

6
推荐指数
1
解决办法
3580
查看次数