4.6.3.1 myisamchk 일반 옵션
이 섹션에서 소개되는 옵션은 myisamchk에 의해 실행되는 모든 테이블 유지 보수 작업에 사용할 수 있습니다. 이 섹션 다음 절은 테이블 점검 또는 복구 등의 특정 작업에만 관련된 옵션을 설명합니다.
--help
,-?
도움말 메시지를 표시하고 종료합니다. 옵션은 작업 유형에 따라 그룹화되어 있습니다.
--HELP
,-H
도움말 메시지를 표시하고 종료합니다. 옵션은 단일 목록에 표시됩니다.
--debug=
,debug_options
-#
debug_options
디버그 로그를 기록합니다. 일반적인
debug_options
문자열은d:t:o,
입니다. 기본값은file_name
d:t:o,/tmp/myisamchk.trace
입니다.--defaults-extra-file=
file_name
이 옵션 파일은 글로벌 옵션 파일 다음에 읽을 수 있지만 (UNIX의 경우) 사용자 옵션 파일 전에 읽도록하십시오. 파일이 없거나 액세스 할 수없는 경우 오류가 발생합니다.
file_name
은 전체 경로 이름이 아닌 상대 경로 이름으로 지정된 경우 현재 디렉토리를 기준으로 해석됩니다.--defaults-file=
file_name
지정된 옵션 파일 만 사용합니다. 파일이 없거나 액세스 할 수없는 경우 오류가 발생합니다.
file_name
은 전체 경로 이름이 아닌 상대 경로 이름으로 지정된 경우 현재 디렉토리를 기준으로 해석됩니다.--defaults-group-suffix=
str
일반적인 옵션 그룹뿐만 아니라 일반 이름에
str
의 접미사가 붙은 그룹도 읽습니다. 예를 들어, myisamchk는 보통[myisamchk]
그룹을 읽습니다.--defaults-group-suffix=_other
옵션을 지정했을 경우, myisamchk는[myisamchk_other]
그룹도 읽습니다.--no-defaults
옵션 파일을 읽지 않습니다. 옵션 파일에서 알 수없는 옵션을 읽을로 인해 프로그램의 실행에 실패 할 경우
--no-defaults
를 사용하여 옵션을 읽는 것을 방지 할 수 있습니다.예외적으로
.mylogin.cnf
파일은 존재하는 경우는 모든 경우에 읽습니다. 이는--no-defaults
가 사용 된 경우에도 명령 행보다 안전한 방법으로 암호를 지정할 수 있습니다. (.mylogin.cnf
는 mysql_config_editor 유틸리티가 작성됩니다. 섹션 4.6.6 "mysql_config_editor - MySQL 구성 유틸리티" 를 참조하십시오).--print-defaults
프로그램 이름과 옵션 파일에서받는 모든 옵션을 출력합니다.
--silent
,-s
자동 모드. 오류가 발생했을 때만 출력을 내 보냅니다.
-s
는 myisamchk를 매우 자동으로하기 위해 2 회 (-ss
) 사용할 수 있습니다.--verbose
,-v
중복 모드. 프로그램의 동작에 대해 더 많은 정보를 출력합니다. 이것은
-d
와-e
와 함께 사용할 수 있습니다. 더 많은 출력을 얻기 위해서는-v
를 여러 번 (-vv
,-vvv
) 사용합니다.--version
,-V
버전 정보를 출력하고 종료합니다.
--wait
,-w
테이블이 잠겨있는 경우 오류로 종료하는 대신 테이블 잠금이 해제 될 때까지 기다린 후 계속합니다. 외부 잠금을 해제 한 상태로 mysqld를 실행하는 경우 테이블을 잠글 수있는 것은 또 다른 myisamchk 명령어뿐입니다.
--
구문을 사용하면 다음의 변수도 설정할 수 있습니다. var_name
= value
변수 | 기본값 |
---|---|
decode_bits | 9 |
ft_max_word_len | 버전에 따라 |
ft_min_word_len | 4 |
ft_stopword_file | 임베디드 목록 |
key_buffer_size | 523264 |
myisam_block_size | 1024 |
myisam_sort_key_blocks | 16 |
read_buffer_size | 262136 |
sort_buffer_size | 2097144 |
sort_key_blocks | 16 |
stats_method | nulls_unequal |
write_buffer_size | 262136 |
가능한 myisamchk 변수와 기본값은 myisamchk --help에서 확인할 수 있습니다.
sort_buffer_size
키를 정렬하여 키가 복구되는 경우에 사용됩니다. --recover
을 사용하면 이것이 일반적입니다. MySQL 5.6.9에서는 myisam_sort_buffer_size
은 sort_buffer_size
의 별칭으로 사용할 수 있습니다. myisam_sort_buffer_size
는 그 이름이 비슷한 의미를 가진 myisam_sort_buffer_size
서버 시스템 변수에 대응하기 위해 sort_buffer_size
보다 권장됩니다. sort_buffer_size
는 비추천으로 간주하도록합니다.
key_buffer_size
는 --extend-check
테이블을 검사 할 때 또는 테이블에 (보통 삽입을 실행하는 경우처럼) 한 줄씩 키를 입력하여 키를 복구하는 데 사용됩니다. 키 버퍼를 통한 복구는 다음의 경우에 사용됩니다.
--safe-recover
를 사용한다.키 정렬에 필요한 임시 파일을 직접 키 파일을 작성하는 경우에 비해 배 이상의 크기가된다. 이것은
CHAR
,VARCHAR
, 또는TEXT
컬럼에 큰 키 값이 주어진 경우 많습니다. 이것은 정렬 작업이 과정에서 완전한 키 값을 저장해야하기 때문입니다. 임시 공간에 여유가 정렬하여 복구하는 myisamchk에 강제 할 수있는 경우--sort-recover
옵션을 사용할 수 있습니다.
키 버퍼를 사용하는 복구는 정렬을 사용하는 것보다 훨씬 디스크의 사용량이 적지 만 속도도 떨어집니다.
빠른 복구를 수행하려면, key_buffer_size
변수 및 myisam_sort_buffer_size
변수를 사용 가능한 메모리의 약 25 %로 설정합니다. 두 변수가 동시에 사용되는 것은 아니기 때문에 두 변수에 큰 값을 설정할 수 있습니다.
myisam_block_size
는 인덱스 블록에 사용되는 크기입니다.
stats_method
은 --analyze
옵션을 지정한 경우 인덱스 통계의 집계에 NULL
값을 어떻게 처리할지에 영향을줍니다. myisam_stats_method
시스템 변수와 같은 기능을합니다. 자세한 내용은 섹션 5.1.4 "서버 시스템 변수" 와 섹션 8.3.7 "InnoDB와 MyISAM 인덱스 통계 컬렉션 ' 에 포함 된 myisam_stats_method
의 설명을 참조하십시오.
ft_min_word_len
및 ft_max_word_len
은 MyISAM
테이블의 FULLTEXT
인덱스 단어 길이를 나타냅니다. ft_stopword_file
는 스톱 워드 파일을 지명합니다. 다음과 같은 상황에서는 이들을 설정할 필요가 있습니다.
myisamchk를 사용하여 테이블 인덱스를 변경하는 작업을 수행하는 경우 (예를 들어 복구 및 분석) 특히 지정하지 않으면, FULLTEXT
인덱스는 최소 및 최대 단어 길이 및 스톱 워드 파일에 기본 전체 문장 파라미터 값을 사용 다시 구축됩니다. 이렇게하면 쿼리에 실패 할 가능성이 있습니다.
이 문제는 이러한 매개 변수가 서버에서만 인식되는 것이 원인으로 발생합니다. MyISAM
인덱스 파일에 저장되지 않습니다. 서버의 최소 및 최대 단어 길이 또는 스톱 워드 파일을 변경 한 경우 문제를 해결하려면 mysqld에서 사용하는 것과 같은 ft_min_word_len
, ft_max_word_len
과 ft_stopword_file
값을 myisamchk에 지정하십시오. 예를 들어, 단어의 최소 길이를 3으로 설정 한 경우에는 다음과 같이 myisamchk를 사용하여 테이블을 복구 할 수 있습니다.
shell> myisamchk --recover --ft_min_word_len=3 tbl_name .MYI
myisamchk와 서버가 전체 매개 변수에 동일한 값을 확실하게 사용하려면 옵션 파일의 [mysqld]
과 [myisamchk]
섹션 모두에 각각 보관하십시오.
[mysqld] ft_min_word_len = 3 [myisamchk] ft_min_word_len = 3
myisamchk를 사용하는 대신 REPAIR TABLE
, ANALYZE TABLE
, OPTIMIZE TABLE
또는 ALTER TABLE
을 사용할 수 있습니다. 이러한 진술은 적절하게 사용되는 전체 매개 변수 값이 인식되는 서버에서 실행됩니다.