Spec-Zone.ru › MySQL 5.7

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

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

  • --backup, -B

    Командная строка --backup

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

  • --character-sets-dir=dir_name

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

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

  • --correct-checksum

    Командная строка --correct-checksum

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

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

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

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

  • --extend-check, -e

    Командная строка --extend-check

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

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

    Описание формата вывода см. в разделе 4.6.3.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 не может выделить память для их хранения.

  • --parallel-recover, -p

    Командная строка --parallel-recover
    Примечание

    Этот параметр устарел в MySQL 5.7.38 и удален в MySQL 5.7.39.

    Используйте ту же технику, что и -r и -n, но создавайте все ключи параллельно, используя разные потоки. Это код бета-качества. Используйте на свой страх и риск!

  • --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

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

  • --tmpdir=dir_name, -t dir_name

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

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

  • --unpack, -u

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

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

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

Spec-Zone.ru

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