سؤال

وثائق MySQL ليست واضحة جدًا في هذا الشأن.أريد إضافة فهرس إلى جدول موجود.الجدول عبارة عن جدول مستخدم بمعرف تسجيل الدخول وكلمة المرور وأريد إنشاء فهرس لهذا لتحسين تسجيل الدخول.

هذه هي الطريقة التي اعتقدت أنني سأجربها:

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      |         |     
+-------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+

هل حقق هذا ما كنت أحاول القيام به؟(تحسين تسجيل الدخول؟) في السابق لم يكن لدي سوى مفتاح أساسي في حقل يسمى "المعرف".

هل كانت مفيدة؟

المحلول

نعم، تم تحقيق ذلك من خلال إنشاء فهرس.الفهرس اسمه "name" (إذا لم تقم بتسمية الفهرس، فإنه يحاول استخدام العمود الأول الذي تحدده في الفهرس).يتكون الفهرس من عمودين: name في الموضع 1، و password في الموضع 2.

أما فيما يتعلق بما إذا كان هذا سيؤدي إلى تحسين تسجيله أم لا، فهذا يعتمد على كيفية استخدام أو عدم استخدام استعلاماتك للفهرس.يجب عليك أيضًا التعرف على كيفية تحليل الاستعلامات باستخدام EXPLAIN.


يجب عليك أيضًا قراءة المزيد حول تخزين كلمات المرور.

إليك مدونة جيدة حول هذا الموضوع:"من المحتمل أنك تقوم بتخزين كلمات المرور بشكل غير صحيح"

نصائح أخرى

وإذا لم أسماء ليست فريدة من نوعها في التطبيق الخاص بك، وأنا لا أعتقد أن هذا ما جعل حقا معنى لمؤشر "كلمة السر". فإن المؤشر هو أكبر وسوف تدرج يكون أبطأ من دون قيمة مضافة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top