One of the features found in the summer 2011 labs release is the ability to select the InnoDB page size without recompiling. Smaller page sizes may be useful for certain storage media such as SSDs where there is no need to minimize seek time between reads.
A new global setting called innodb-page-size can be set to 4k, 8k or 16k before creating a new MySQL instance. This sets the page size for all tablespaces used by that InnoDB instance. This can be done in my.cnf or on the mysqld command line. It is a read-only variable while the engine is running since it must be set before InnoDB starts up and creates a new system tablespace. That happens when InnoDB does not find ibdata1 in the data directory. If your system tablespace already exists using one page size and innodb-page-size is something else, the engine will not start.
A few bugs were found and fixed related to smaller page sizes in InnoDB …
[Read more]