O'Reilly logo

MySQL Reference Manual by Kaj Arno, David Axmark, Michael Widenius

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

ISAM Tables

You can also use the deprecated ISAM table type. This will disappear rather soon (probably in MySQL 4.1) because MyISAM is a better implementation of the same thing. ISAM uses a B-tree index. The index is stored in a file with the .ISM extension, and the data is stored in a file with the .ISD extension. You can check/repair ISAM tables with the isamchk utility. See Section 4.4.6.7.

ISAM has the following features/properties:

  • Compressed and fixed-length keys.

  • Fixed and dynamic record length.

  • 16 keys with 16 key parts/key.

  • Max key length 256 (default).

  • Data is stored in machine format; this is fast, but is machine/OS-dependent.

Most of the things true for MyISAM tables are also true for ISAM tables. See Section 7.1. The major differences compared to MyISAM tables are:

  • ISAM tables are not binary-portable across OS/platforms.

  • Can’t handle tables > 4G.

  • Only support prefix compression on strings.

  • Smaller key limits.

  • Dynamic tables get more fragmented.

  • Tables are compressed with pack_isam rather than with myisampack.

If you want to convert an ISAM table to a MyISAM table so that you can use utilities such as mysqlcheck, use an ALTER TABLE statement:

mysql> ALTER TABLE tbl_name TYPE = MYISAM;

The embedded MySQL versions doesn’t support ISAM tables.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required