nerdexam
Oracle

1Z0-888 · Question #38

When you examine a new MySQL installation with default configuration, you find a file ibdata1 in the database directory. Which two statements are true about this file?

The correct answer is C. It is the default location for all new tables that you create. D. It contains the system tablespace. ibdata1 is the InnoDB system tablespace file (D), which serves as the central storage file for InnoDB's internal structures including the data dictionary, change buffer, and doublewrite buffer. In the default MySQL configuration - particularly when innodb_file_per_table=OFF…

MySQL Architecture

Question

When you examine a new MySQL installation with default configuration, you find a file ibdata1 in the database directory. Which two statements are true about this file?

Options

  • AIt contains the binary log.
  • BIt contains a general tablespace.
  • CIt is the default location for all new tables that you create.
  • DIt contains the system tablespace.
  • EIt contains the redo log.
  • FIt contains the undo log.

How the community answered

(45 responses)
  • A
    7% (3)
  • B
    2% (1)
  • C
    87% (39)
  • E
    4% (2)

Explanation

ibdata1 is the InnoDB system tablespace file (D), which serves as the central storage file for InnoDB's internal structures including the data dictionary, change buffer, and doublewrite buffer. In the default MySQL configuration - particularly when innodb_file_per_table=OFF (the historical default prior to MySQL 5.6) - all newly created InnoDB tables are stored within ibdata1, making it the default location for new table data (C).

Why the distractors are wrong:

  • A - The binary log lives in separate named files (e.g., binlog.000001), controlled by log_bin.
  • B - A general tablespace is a user-created shared tablespace made with CREATE TABLESPACE; ibdata1 is the system tablespace, which is a distinct concept.
  • E - Redo logs reside in ib_logfile0/ib_logfile1 (or the #innodb_redo/ directory in MySQL 8.0.30+), not in ibdata1.
  • F - While undo logs historically did live inside ibdata1 (making this a classic trap), MySQL 8.0 moved them to dedicated undo tablespace files (undo_001, undo_002), and modern exam questions treat them as separate.

Memory tip: Think of ibdata1 as InnoDB's "mothership" - it's the System tablespace (S for ibdataStore) and the Starter location for all tables. When in doubt, if a storage concept has its own dedicated file, it's not in ibdata1.

Topics

#InnoDB system tablespace#tablespace architecture#data storage files#MySQL innodb

Community Discussion

No community discussion yet for this question.

Full 1Z0-888 Practice