---
name: "isamchk"
section: "1"
platform: "linux"
package: "mysql-server"
version: "4.0.24-10sarge3"
release: "Debian 3.1 (Sarge)"
platforms: ["linux"]
url: "https://new.carta.tech/isamchk"
---

# isamchk(1)

Description, check and repair of ISAM tables. Used without options all tables on the command will be checked for errors

## NAME

**isamchk**\
  \- Description, check and repair of ISAM tables. Used without options all tables on the command will be checked for errors

## USAGE

isamchk \[OPTIONS\] tables\[.ISM\]

## SYNOPSIS

**isamchk** \[**-a**\|**--analyze**\] \[**-#**\|**--debug=...**\] \[**--character-sets-dir=...\]** \[**-C**\|**--default-character-set=...\]** \[**-d**\|**--description**\] \[**-e**\|**--extend-check**\] \[**-f**\|**--force**\] \[**-?**\|**--help**\] \[**-i**\|**--information**\] \[**-k**\|**--keys-used=#**\] \[**-l**\|**--no-symlinks\]** \[**-q**\|**--quick**\] \[**-r**\|**--recover**\] \[**-o**\|**--safe-recover**\] \[**-O**\|**--set-variable var=option**\] \[**-s**\|**--silent**\] \[**-S**\|**--sort-index**\] \[**-R**\|**--sort-records=#\]** \[**-u**\|**--unpack**\] \[**-v**\|**--verbose**\] \[**-V**\|**--version**\] \[**-w**\|**--wait**\]

## DESCRIPTION

- **-a**\|**--analyze**

  Analyze distribution of keys. Will make some joins in MySQL faster.

- **-#**\|**--debug=...**

  Output debug log. Often this is 'd:t:o ,filename\`

- **--character-sets-dir=...**

  Directory where character sets are

- **-C**\|**--default-character-set=...**

  Set the default character set

- **-d**\|**--description**

  Prints some information about table.

- **-e**\|**--extend-check**

  Check the table VERY thoroughly.  One need use this only in extreme cases as isamchk should normally find all errors even without this switch

- **-f**\|**--force**

  Overwrite old temporary files. If one uses -f when checking tables (running isamchk without -r), isamchk will automatically restart with -r on any wrong table.

- **-?**\|**--help**

  Display help and exit.

- **-i**\|**--information**

  Print statistics information about the table

- **-k**\|**--keys-used=#**

  Used with '-r'. Tell ISAM to update only the first # keys.  This can be used to get faster inserts!

- **-l**\|**--no-symlinks**

  Do not follow symbolic links when repairing. Normally isamchk repairs the table a symlink points at.

- **-q**\|**--quick**

  Used with -r to get a faster repair. (The data file isn't touched.) One can give a second '-q' to force isamchk to modify the original datafile.

- **-r**\|**--recover**

  Can fix almost anything except unique keys that aren't unique.

- **-o**\|**--safe-recover**

  Uses old recovery method; slower than '-r' but can handle a couple of cases that '-r' cannot handle.

- **-O**\| **--set-variable var=option**

  Change the value of a variable.

- **-s**\|**--silent**

  Only print errors.  One can use two -s to make isamchk very silent

- **-S**\|**--sort-index**

  Sort index blocks.  This speeds up 'read-next' in applications

- **-R**\|**--sort-records=#**

  Sort records according to an index.  This makes your data much more localized and may speed up things (It may be VERY slow to do a sort the first time!)

- **-u**\|**--unpack**

  Unpack file packed with pack\_isam.

- **-v**\|**--verbose**

  Print more information. This can be used with -d and -e. Use many -v for more verbosity!

- **-V**\|**--version**

  Print version and exit.

- **-w**\|**--wait**

  Wait if table is locked.

## SEE ALSO

[isamlog(1)](/isamlog/1.md), [mysql(1)](/mysql/1.md), [mysqlaccess(1)](/mysqlaccess/1.md), [mysqladmin(1)](/mysqladmin/1.md), [mysqld(1)](/mysqld/1.md), [mysqld\_multi(1)](/mysqld_multi/1.md), [mysqld\_safe(1)](/mysqld_safe/1.md), [mysqldump(1)](/mysqldump/1.md), [mysql\_fix\_privilege\_tables(1)](/mysql_fix_privilege_tables/1.md), [mysqlshow(1)](/mysqlshow/1.md), [mysql\_zap(1)](/mysql_zap/1.md), [perror(1)](/perror/1.md), [replace(1)](/replace/1.md)

For more information please refer to the MySQL reference manual, which may already be installed locally and which is also available online at http://www.mysql.com/doc/en/

## BUGS

Please refer to http://bugs.mysql.com/ to report bugs.

## AUTHOR

Ver 1.0, distribution 4.0.24 Michael (Monty) Widenius (monty@mysql.com), MySQL AB (http://www.mysql.com/). This software comes with no warranty. Manual page by L. (Kill-9) Pedersen  (kill-9@kill-9.dk), Mercurmedia Data Model Architect / system developer (http://www.mercurmedia.com)
