Spec-Zone.ru › MySQL 9.2

6.6.4.3 myisamchk Параметры восстановления

myisamchk поддерживает следующие параметры для операций по восстановлению таблиц (операции выполняются, когда задан параметр, такой как --recover или --safe-recover):

  • --backup, -B

    Формат командной строки --backup

    Создать резервную копию файла .MYD как file_name-time.BAK

  • --character-sets-dir=dir_name

    Формат командной строки --character-sets-dir=path
    Тип Строка
    Значение по умолчанию [none]

    Каталог, в котором установлены наборы символов. См. Раздел 12.15, «Настройка наборов символов».

  • --correct-checksum

    Формат командной строки --correct-checksum

    Исправить информацию о контрольной сумме таблицы.

  • --data-file-length=len, -D len

    Формат командной строки --data-file-length=len
    Тип Числовое

    Максимальная длина файла данных (при повторном создании файла данных, когда он “полный”).

  • --extend-check, -e

    Формат командной строки --extend-check

    Выполнить восстановление, которое пытается восстановить каждую возможную строку из файла данных. Обычно это также находит много мусорных строк. Не используйте этот параметр, если вы не в отчаянии.

    См. также описание этого параметра в параметрах проверки таблиц.

    Для описания формата вывода см. Раздел 6.6.4.5, «Получение информации о таблице с помощью myisamchk».

  • --force, -f

    Формат командной строки --force

    Перезаписать старые промежуточные файлы (файлы с именами, например, tbl_name.TMD) вместо прерывания.

  • --keys-used=val, -k val

    Формат командной строки --keys-used=val
    Тип Числовое

    Для myisamchk значение параметра — битовое значение, указывающее, какие индексы нужно обновить. Каждый двоичный бит значения параметра соответствует индексу таблицы, где первый индекс — бит 0. Значение параметра 0 отключает обновления всех индексов, что может использоваться для ускорения вставок. Отключенные индексы можно снова включить, используя myisamchk -r.

  • --max-record-length=len

    Формат командной строки --max-record-length=len
    Тип Числовое

    Пропустить строки, длина которых больше заданной, если myisamchk не может выделить память для их хранения.

  • --quick, -q

    Формат командной строки --quick

    Добиться более быстрого восстановления, изменяя только файл индекса, а не файл данных. Вы можете указать этот параметр дважды, чтобы принудительно заставить myisamchk изменить исходный файл данных в случае дублирующих ключей.

  • --recover, -r

    Формат командной строки --recover

    Выполнить восстановление, которое может исправить почти любую проблему, кроме уникальных ключей, которые не являются уникальными (что является крайне маловероятной ошибкой в таблицах MyISAM). Если вы хотите восстановить таблицу, это тот параметр, с которого следует начать. Вы должны попробовать --safe-recover только в том случае, если myisamchk сообщает, что таблицу невозможно восстановить с помощью --recover. (В маловероятном случае, если --recover завершится неудачно, файл данных останется нетронутым.)

    При наличии большого объема памяти следует увеличить значение myisam_sort_buffer_size.

  • --safe-recover, -o

    Формат командной строки --safe-recover

    Выполнить восстановление с помощью старого метода восстановления, который считывает все строки в порядке и обновляет все деревья индексов на основе найденных строк. Это в разы медленнее, чем --recover, но может обрабатывать несколько очень маловероятных случаев, с которыми --recover не справится. Этот метод восстановления также использует значительно меньше дискового пространства, чем --recover. Обычно следует сначала выполнить восстановление с помощью --recover, а затем с --safe-recover только в том случае, если --recover завершится неудачно.

    При наличии большого объема памяти следует увеличить значение key_buffer_size.

  • --set-collation=name

    Формат командной строки --set-collation=name
    Тип Строка

    Укажите сортировку для сортировки индексов таблицы. Имя набора символов подразумевается первой частью имени сортировки.

  • --sort-recover, -n

    Формат командной строки --sort-recover

    Принудительно заставить myisamchk использовать сортировку для решения ключей, даже если временные файлы будут очень большими.

  • --tmpdir=dir_name, -t dir_name

    Формат командной строки --tmpdir=dir_name
    Тип Имя каталога

    Путь к каталогу для хранения временных файлов. Если это не задано, myisamchk использует значение переменной окружения TMPDIR. --tmpdir может быть задано в виде списка путей к каталогам, которые используются по очереди в режиме циклического перебора для создания временных файлов. Разделителем между именами каталогов является двоеточие (:) в Unix и точка с запятой (;) в Windows.

END_OF_DOCUMENT_MARKER
  • --unpack, -u

    Формат командной строки --unpack

    Распаковать таблицу, которая была упакована с помощью myisampack.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-8.4-en/myisamchk-repair-options.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API