웹마짱구's 블로그

myisamchk [테이블복구]

Linux/MySql : 2007/10/30 15:27


mysql 서버를 중지 시킨다.
데이터 파일이 있는 디렉토리로 이동한다
# myisamchk -r tableName.MYI

-o (--safe-recover)
-f (--force)

Usage: ./myisamchk [OPTIONS] tables[.MYI]

Global options:
  -#, --debug=...     Output debug log. Often this is 'd:t:o,filename`
  -?, --help          Display this help and exit.
  -O, --set-variable var=option
                      Change the value of a variable.
  -s, --silent        Only print errors.  One can use two -s to make
                      myisamchk very silent
  -v, --verbose       Print more information. This can be used with
                      --describe and --check. Use many -v for more verbosity!
  -V, --version       Print version and exit.
  -w, --wait          Wait if table is locked.

Check options (check is the default action for myisamchk):
  -c, --check         Check table for errors
  -e, --extend-check  Check the table VERY throughly.  Only use this in
                      extreme cases as myisamchk should normally be able to
                      find out if the table is ok even without this switch
  -F, --fast          Check only tables that hasn't been closed properly
  -C, --check-only-changed
                      Check only tables that has changed since last check
  -f, --force         Restart with -r if there are any errors in the table.
                      States will be updated as with --update-state
  -i, --information   Print statistics information about table that is checked
  -m, --medium-check  Faster than extended-check, but only finds 99.99% of
                      all errors.  Should be good enough for most cases
  -U  --update-state  Mark tables as crashed if you find any errors
  -T, --read-only     Don't mark table as checked

Repair options (When using -r or -o)
  -B, --backup        Make a backup of the .MYD file as 'filename-time.BAK'
  -D, --data-file-length=#  Max length of data file (when recreating data
                      file when it's full)
  -e, --extend-check  Try to recover every possible row from the data file
                      Normally this will also find a lot of garbage rows;
                      Don't use this option if you are not totally desperate.
  -f, --force         Overwrite old temporary files.
  -k, --keys-used=#   Tell MyISAM to update only some specific keys. # is a
                      bit mask of which keys to use. This can be used to
                      get faster inserts!
  -l, --no-symlinks   Do not follow symbolic links. Normally
                      myisamchk repairs the table a symlink points at.
  -r, --recover       Can fix almost anything except unique keys that aren't
                      unique.
  -n, --sort-recover  Force recovering with sorting even if the temporary
                      file would be very big.
  -o, --safe-recover  Uses old recovery method; Slower than '-r' but can
                      handle a couple of cases where '-r' reports that it
                      can't fix the data file.
  --character-sets-dir=...
                      Directory where character sets are
  --set-character-set=name
                      Change the character set used by the index
  -t, --tmpdir=path   Path for temporary files
  -q, --quick         Faster repair by not modifying the data file.
                      One can give a second '-q' to force myisamchk to
                      modify the original datafile in case of duplicate keys
  -u, --unpack        Unpack file packed with myisampack.

Other actions:
  -a, --analyze       Analyze distribution of keys. Will make some joins in
                      MySQL faster.  You can check the calculated distribution
                      by using '--describe --verbose table_name'.
  -d, --description   Prints some information about table.
  -A, --set-auto-increment[=value]
                      Force auto_increment to start at this or higher value
                      If no value is given, then sets the next auto_increment
                      value to the highest used value for the auto key + 1.
  -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!)

Default options are read from the following files in the given order:
/etc/my.cnf /usr/local/mysql/var/my.cnf ~/.my.cnf
The following groups are read: myisamchk
The following options may be given as the first argument:
--print-defaults        Print the program argument list and exit
--no-defaults           Don't read default options from any options file
--defaults-file=#       Only read default options from the given file #
--defaults-extra-file=# Read this file after the global files are read

Possible variables for option --set-variable (-O) are:
key_buffer_size       current value: 520192
read_buffer_size      current value: 262136
write_buffer_size     current value: 262136
sort_buffer_size      current value: 2097144
sort_key_blocks       current value: 16
decode_bits           current value: 9

top

TAG
Linux/MySql : 2007/10/30 15:27 Trackback. : Comment. : view 893

Trackback Address :: http://jjangu.pe.kr/blog/trackback/471

Write a comment.




: 1 : ... 127 : 128 : 129 : 130 : 131 : 132 : 133 : 134 : 135 : ... 543 :