DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH
 

(mysql.info.gz) Using mysqlcheck

Info Catalog (mysql.info.gz) mysqlcc (mysql.info.gz) Client-Side Scripts (mysql.info.gz) mysqldump
 
 8.7 The `mysqlcheck' Table Maintenance and Repair Program
 =========================================================
 
 The `mysqlcheck' client checks and repairs `MyISAM' tables.  It can
 also optimize and analyze tables. `mysqlcheck' is available as of MySQL
 3.23.38.
 
 `mysqlcheck' is similar in function to `myisamchk', but works
 differently.  The main operational difference is that `mysqlcheck' must
 be used when the `mysqld' server is running, whereas `myisamchk' should
 be used when it is not. The benefit of using `mysqlcheck' is that you
 do not have to stop the server to check or repair your tables.
 
 `mysqlcheck' uses the SQL statements `CHECK TABLE', `REPAIR TABLE',
 `ANALYZE TABLE', and `OPTIMIZE TABLE' in a convenient way for the user.
 It determines which statements to use for the operation you want to
 perform, then sends the statements to the server to be executed.
 
 There are three general ways to invoke `mysqlcheck':
 
      shell> mysqlcheck [OPTIONS] DB_NAME [TABLES]
      shell> mysqlcheck [OPTIONS] --databases DB1 [DB2 DB3...]
      shell> mysqlcheck [OPTIONS] --all-databases
 
 If you don't name any tables or use the `--databases' or
 `--all-databases' option, entire databases will be checked.
 
 `mysqlcheck' has a special feature compared to the other clients. The
 default behavior of checking tables (`--check') can be changed by
 renaming the binary. If you want to have a tool that repairs tables by
 default, you should just make a copy of `mysqlcheck' named
 `mysqlrepair', or make a symbolic link to `mysqlcheck' named
 `mysqlrepair'. If you invoke `mysqlrepair', it will repair tables by
 command.
 
 The following names can be used to change `mysqlcheck' default behavior:
 
 `mysqlrepair'      The default option will be `--repair'
 `mysqlanalyze'     The default option will be `--analyze'
 `mysqloptimize'    The default option will be `--optimize'
 
 `mysqlcheck' supports the following options:
 
 `--help, -?'
      Display a help message and exit.
 
 `--all-databases, -A'
      Check all tables in all databases. This is the same as using the
      `--databases' option and naming all the databases on the command
      line.
 
 `--all-in-1, -1'
      Instead of issuing a statement for each table, execute a single
      statement for each database that names all the tables from that
      database to be processed.
 
 `--analyze, -a'
      Analyze the tables.
 
 `--auto-repair'
      If a checked table is corrupted, automatically fix it. Any
      necessary repairs are done after all tables have been checked.
 
 `--character-sets-dir=PATH'
      The directory where character sets are installed.   Character
      sets.
 
 `--check, -c'
      Check the tables for errors.
 
 `--check-only-changed, -C'
      Check only tables that have changed since the last check or that
      haven't been closed properly.
 
 `--compress'
      Compress all information sent between the client and the server if
      both support compression.
 
 `--databases, -B'
      Process all tables in the named databases. With this option, all
      name arguments are regarded as database names, not as table names.
 
 `--debug[=DEBUG_OPTIONS], -# [DEBUG_OPTIONS]'
      Write a debugging log. The DEBUG_OPTIONS string often is
      `'d:t:o,FILE_NAME''.
 
 `--default-character-set=CHARSET'
      Use CHARSET as the default character set.   Character sets.
 
 `--extended, -e'
      If you are using this option to check tables, it ensures that they
      are 100% consistent but will take a long time.
 
      If you are using this option to repair tables, it runs an extended
      repair that may not only take a long time to execute, but may
      produce a lot of garbage rows also!
 
 `--fast, -F'
      Check only tables that haven't been closed properly.
 
 `--force, -f'
      Continue even if an SQL error occurs.
 
 `--host=HOST_NAME, -h HOST_NAME'
      Connect to the MySQL server on the given host.
 
 `--medium-check, -m'
      Do a check that is faster than an `--extended' operation.  This
      finds only 99.99% of all errors, which should be good enough in
      most cases.
 
 `--optimize, -o'
      Optimize the tables.
 
 `--password[=PASSWORD], -p[PASSWORD]'
      The password to use when connecting to the server.  If you use the
      short option form (`-p'), you _cannot_ have a space between the
      option and the password.  If you omit the PASSWORD value following
      the `--password' or `-p' option on the command line, you will be
      prompted for one.
 
 `--port=PORT_NUM, -P PORT_NUM'
      The TCP/IP port number to use for the connection.
 
 `--protocol={TCP | SOCKET | PIPE | MEMORY}'
      The connection protocol to use.  New in MySQL 4.1.
 
 `--quick, -q'
      If you are using this option to check tables, it prevents the check
      from scanning the rows to check for incorrect links. This is the
      fastest check method.
 
      If you are using this option to repair tables, it tries to repair
      only the index tree. This is the fastest repair method.
 
 `--repair, -r'
      Do a repair that can fix almost anything except unique keys that
      aren't unique.
 
 `--silent, -s'
      Silent mode.  Print only error messages.
 
 `--socket=PATH, -S PATH'
      The socket file to use for the connection.
 
 `--tables'
      Overrides the `--databases' or `-B' option. All arguments
      following the option are regarded as table names.
 
 `--user=USER_NAME, -u USER_NAME'
      The MySQL username to use when connecting to the server.
 
 `--verbose, -v'
      Verbose mode.  Print information about the various stages of
      program operation.
 
 `--version, -V'
      Display version information and exit.
 
 
Info Catalog (mysql.info.gz) mysqlcc (mysql.info.gz) Client-Side Scripts (mysql.info.gz) mysqldump
automatically generated byinfo2html