Bird
Raised Fist0
MySQLquery~5 mins

Index maintenance in MySQL - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is the main purpose of index maintenance in a database?
Index maintenance ensures that indexes remain efficient and up-to-date, which helps speed up data retrieval and keeps the database performing well.
Click to reveal answer
beginner
What happens if indexes are not maintained regularly?
Indexes can become fragmented or outdated, causing slower queries and increased resource use because the database has to work harder to find data.
Click to reveal answer
intermediate
Which MySQL command can be used to rebuild an index?
You can use ALTER TABLE table_name DROP INDEX index_name, ADD INDEX index_name (columns); or OPTIMIZE TABLE table_name; to rebuild and defragment indexes.
Click to reveal answer
intermediate
What is index fragmentation and why is it important to fix it?
Fragmentation means the index pages are not stored in a continuous order, which slows down data access. Fixing it improves speed and reduces disk I/O.
Click to reveal answer
intermediate
How does the OPTIMIZE TABLE command help with index maintenance in MySQL?
It reorganizes the physical storage of table data and associated indexes, reducing fragmentation and reclaiming unused space to improve query speed.
Click to reveal answer
What is the effect of index fragmentation on database performance?
ANo effect at all
BSlower query response times
CMore efficient memory usage
DFaster data insertion
Which MySQL command can help reduce index fragmentation?
AOPTIMIZE TABLE
BCREATE INDEX
CDROP TABLE
DSHOW INDEX
Why should you maintain indexes regularly?
ATo disable indexing
BTo delete all data
CTo increase disk space usage
DTo keep queries fast and efficient
Which of these is NOT a method of index maintenance?
ADropping unused indexes
BDefragmenting indexes
CIncreasing table size
DRebuilding indexes
What does the ALTER TABLE command do in index maintenance?
ARebuilds or modifies indexes
BDeletes the entire table
CShows table structure
DBacks up the database
Explain why index maintenance is important for database performance.
Think about how data is stored and accessed.
You got /4 concepts.
    Describe common methods to maintain indexes in MySQL.
    Focus on commands and practices.
    You got /4 concepts.

      Practice

      (1/5)
      1. What is the main purpose of maintaining indexes in a MySQL database?
      easy
      A. To speed up data searches and queries
      B. To increase the size of the database
      C. To delete all data from tables
      D. To backup the database automatically

      Solution

      1. Step 1: Understand what indexes do

        Indexes help the database find data faster, like an index in a book.
      2. Step 2: Identify the main benefit of index maintenance

        Maintaining indexes keeps searches quick and efficient.
      3. Final Answer:

        To speed up data searches and queries -> Option A
      4. Quick Check:

        Indexes improve search speed = D [OK]
      Hint: Indexes speed up queries by organizing data [OK]
      Common Mistakes:
      • Thinking indexes increase database size only
      • Confusing index maintenance with data backup
      • Believing indexes delete data
      2. Which of the following is the correct syntax to drop an index named idx_name from a table users in MySQL?
      easy
      A. DELETE INDEX idx_name FROM users;
      B. DROP INDEX idx_name ON users;
      C. REMOVE INDEX idx_name IN users;
      D. DROP idx_name FROM users;

      Solution

      1. Step 1: Recall MySQL syntax for dropping an index

        The correct command is DROP INDEX index_name ON table_name;.
      2. Step 2: Match the syntax with options

        DROP INDEX idx_name ON users; matches the correct syntax exactly.
      3. Final Answer:

        DROP INDEX idx_name ON users; -> Option B
      4. Quick Check:

        DROP INDEX ... ON ... is correct syntax = B [OK]
      Hint: Use DROP INDEX index_name ON table_name; to remove indexes [OK]
      Common Mistakes:
      • Using DELETE or REMOVE instead of DROP
      • Omitting ON keyword
      • Wrong keyword order
      3. Given the table products with an index on category_id, what will be the effect of running OPTIMIZE TABLE products;?
      medium
      A. It renames the products table
      B. It deletes all rows from the products table
      C. It adds a new index on category_id automatically
      D. It rebuilds the table and its indexes to improve performance

      Solution

      1. Step 1: Understand what OPTIMIZE TABLE does

        OPTIMIZE TABLE rebuilds the table and its indexes to reduce fragmentation and improve speed.
      2. Step 2: Analyze the options

        Only It rebuilds the table and its indexes to improve performance correctly describes this effect.
      3. Final Answer:

        It rebuilds the table and its indexes to improve performance -> Option D
      4. Quick Check:

        OPTIMIZE TABLE rebuilds table and indexes = A [OK]
      Hint: OPTIMIZE TABLE rebuilds indexes and table for better speed [OK]
      Common Mistakes:
      • Thinking OPTIMIZE deletes data
      • Assuming it adds indexes automatically
      • Confusing it with renaming tables
      4. You tried to drop an index using DROP INDEX idx_user ON users; but got an error. What is a likely cause?
      medium
      A. The table users does not exist
      B. You must use DELETE INDEX instead of DROP INDEX
      C. The index name idx_user does not exist on the table
      D. You need to restart the MySQL server before dropping indexes

      Solution

      1. Step 1: Check common reasons for DROP INDEX errors

        An error usually occurs if the index name is wrong or missing.
      2. Step 2: Evaluate the options

        The index name idx_user does not exist on the table is the most common cause; other options are incorrect commands or unnecessary actions.
      3. Final Answer:

        The index name idx_user does not exist on the table -> Option C
      4. Quick Check:

        Wrong index name causes DROP INDEX error = C [OK]
      Hint: Verify index name exists before dropping it [OK]
      Common Mistakes:
      • Using DELETE instead of DROP
      • Assuming server restart is needed
      • Not checking table existence first
      5. You have a large table orders with a composite index on (customer_id, order_date). After frequent inserts and deletes, queries on customer_id are slow. What is the best index maintenance step to improve performance?
      hard
      A. Run OPTIMIZE TABLE orders; to rebuild the table and indexes
      B. Drop the composite index and create separate indexes on each column
      C. Delete all rows and reload the table
      D. Rename the table to refresh indexes

      Solution

      1. Step 1: Understand index fragmentation impact

        Frequent inserts and deletes cause index fragmentation, slowing queries.
      2. Step 2: Choose the best maintenance action

        OPTIMIZE TABLE rebuilds indexes and reduces fragmentation, improving query speed.
      3. Step 3: Evaluate other options

        Dropping and recreating indexes separately may not help and can be costly; deleting data or renaming table is unrelated.
      4. Final Answer:

        Run OPTIMIZE TABLE orders; to rebuild the table and indexes -> Option A
      5. Quick Check:

        OPTIMIZE TABLE fixes fragmentation = A [OK]
      Hint: Use OPTIMIZE TABLE to fix fragmented indexes after many changes [OK]
      Common Mistakes:
      • Dropping composite index without reason
      • Thinking renaming table refreshes indexes
      • Deleting data instead of maintaining indexes
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard