InnoDB与MyISAM在存储用户名和密码的表中

问题描述 投票:0回答:2

我有一个表用户名,用于存储用户的用户名和密码。

用户名]的结构由:

CREATE TABLE `usernames` 
(
  `id`       INT NOT NULL AUTO_INCREMENT , 
  `user_id`  INT NOT NULL , 
  `username` VARCHAR(50)  NOT NULL , 
  `password` VARCHAR(100) NOT NULL , 
  `time`     TIMESTAMP    NOT NULL ,

    PRIMARY KEY (`id`),

    UNIQUE `user_id_index`  (`user_id`) /* it's primary key in users table(user infos)*/
    UNIQUE `username_index` (`username`)

) ENGINE = InnoDB;

我期望表中的行数超过100,000。在此表上将仅执行两种查询,这些查询的示例为:

  • SELECT * FROM usernames WHERE username = 'brad'
  • UPDATE usernames SET username = 'newbrad' WHERE user_id = '312'
  • 现在,我正在使用InnoDB引擎,在这种情况下,我想知道它是否比MyISAM好。

谢谢你!

我有一个表用户名,用于存储用户的用户名和密码。表用户名的结构如下:CREATE TABLE`usernames`((id` INT NOT NULL AUTO_INCREMENT,`user_id` INT ...

mysql innodb database-schema query-performance myisam
2个回答
1
投票

我非常怀疑您会发现,这么小的数据库有什么区别。随时进行研究,但可能不必担心,确实没有错误的选择。 InnoDB是一个更严格的引擎,并且对于许多(大多数?)应用程序来说都更好,因此如果有疑问,请选择它。


0
投票

[从至少从MySQL 5.1开始,即使在只读性能上,MyISAM也更糟,而在写性能上,它一直较差。

© www.soinside.com 2019 - 2024. All rights reserved.