gpt4 book ai didi

mysql - 向 MySQL 表添加索引

转载 作者:行者123 更新时间:2023-11-29 04:04:43 24 4
gpt4 key购买 nike

MySQL 文档对此不是很清楚。我想为现有表添加索引。该表是一个带有登录 ID 和密码的用户表,我想为此创建一个索引以优化登录。

这就是我想尝试的方式:

mysql> ALTER TABLE `users` ADD INDEX(`name`,`password`);

这创建了:

mysql> show index from karmerd.users;
+-------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+
| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment |
+-------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+
| users | 0 | PRIMARY | 1 | id | A | 2 | NULL | NULL | | BTREE | |
| users | 1 | name | 1 | name | A | 2 | NULL | NULL | | BTREE | |
| users | 1 | name | 2 | password | A | 2 | NULL | NULL | YES | BTREE | |
+-------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+

这是否实现了我想要做的事情? (优化登录?)以前我在名为“id”的字段上只有一个主键。

最佳答案

是的,这样就实现了创建索引。索引被命名为“name”(如果您没有给索引命名,它会尝试使用您在索引中指定的第一列)。该索引由两列组成:位置 1 中的 name 和位置 2 中的 password

至于这是否会优化日志记录,这取决于您的查询可能会或可能不会使用索引的方式。您还应该了解如何使用 EXPLAIN 分析查询.


您还应该阅读有关存储密码的更多信息。

这是关于这个主题的一个很好的博客:“You're Probably Storing Passwords Incorrectly

关于mysql - 向 MySQL 表添加索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/408467/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com