892得票25回答
MyISAM与InnoDB的比较

我正在处理一个项目,其中包含大量的数据库写入操作,我会说(70%插入和30%读取)。这个比例也包括更新操作,我认为一次更新操作相当于一次读取和一次写入操作。这些读取操作可以是不准确的(例如,我在读取时不需要100%准确的信息)。 所涉及的任务每小时将执行超过100万个数据库事务。 我在网上...

478得票14回答
如何检查特定表的MySQL引擎类型?

我的MySQL数据库包含多个使用不同存储引擎(具体来说是MyISAM和InnoDB)的表。如何查询哪些表使用了哪种引擎?

279得票2回答
MyISAM和InnoDB有什么区别?

我知道这个问题以前已经被问过了,但大多数情况下是针对特定的数据库或表。我在这个网站上找不到一个描述这两个引擎及其差异的答案,而不涉及任何人特定数据库的答案。 我希望能够更加明智地做出未来关于设计表或数据库的决策,因此正在寻求有关这两种存储引擎差异的全面回答。 MyISAM和InnoDB的区...

225得票8回答
如何正确创建复合主键 - MYSQL

以下是我正在处理的一个复杂设置的严重简化版本。 table_1 和 table_2 都拥有自动增量代理主键作为ID。 info 是一个包含有关table_1和table_2的信息的表。table_1 (id, field) table_2 (id, field, field) info (...

214得票14回答
INT和VARCHAR主键之间是否存在真正的性能差异?

在MySQL中,使用INT和VARCHAR作为主键会有可测量的性能差异吗?我想在参考列表(例如US States、Country Codes)中使用VARCHAR作为主键,但我的同事坚持要将INT AUTO_INCREMENT作为所有表的主键。 我的观点是,如这里所述,INT和VARCHAR...

134得票8回答
MySQL中的InnoDB和MyISAM是什么?

InnoDB 和 MyISAM 在 MySQL 中是什么?

132得票10回答
如何在运行SQL更新语句前进行测试?

在某些情况下,在生产环境中运行更新语句可能会挽救局面。但是,出现故障的更新比最初的问题更糟糕。 除了使用测试数据库之外,还有什么选项可以在运行更新语句之前告诉它将要执行什么操作?

95得票3回答
如何知道一个MySQL表是使用myISAM引擎还是InnoDB引擎?

在MySQL中,无法为特定的数据库指定存储引擎,只能为单个表进行指定。但是,在会话期间可以使用以下方式指定要使用的存储引擎:SET storage_engine=InnoDB; 因此,您不需要为每个表单独指定它。 我如何确认是否确实所有的表都在使用InnoDB?

60得票2回答
在MySQL中更改表引擎

我正在使用mysql和mysql workbench。我创建了5个使用innodb引擎的表。在往这些表中插入数据之前,我检查它们的引擎类型是innodb。我从5个MyISAM表中插入数据后,现在我的innodb表变成了MyISAM。我无法更改它们。我使用了alter table engine=...

51得票5回答
mysql error 'TYPE=MyISAM'

我在Ubuntu 12,MySQL 5.1版本中执行以下查询,并收到如下错误:CREATE TABLE mantis_config_table ( config_id VARCHAR(64) NOT NULL, project_id INTEGER NOT NULL DEFAU...