Изучаем MySQL | Урок №33 - Начало

Опубликовано: 27.03.2017

видео Изучаем MySQL | Урок №33 - Начало

видеокурс о хостинге FatCow, MySQL (базы данных)

Для таблиц MyISAM с динамическими размерами при запуске проверки всегда производится проверка MEDIUM. Для строк со статическими размерами мы пропускаем сканирование строк для QUICK и FAST, так как повреждение строк происходит очень изредка.



Проверочные функции можно соединять:

Эта команда просто вызовет резвую проверку таблицы для выявления того, была ли она закрыта корректно.

Примечание: в неких случаях CHECK TABLE изменяет таблицу! Это происходит, если таблица помечена как 'покоробленная/corrupted' либо 'не закрытая корректно/not closed properly', а CHECK TABLE не находит никаких заморочек в таблице. В данном случае CHECK TABLE отметит в таблице, что с ней все нормально.


Числа с фиксированной точкой в базах данных MySQL. Типы данных DECIMAL и NUMERIC в MySQL

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

Если проверяется таблица, с которой предположительно все нормально, то можно опустить проверочные функции либо указать опцию QUICK. Последнюю возможность следует использовать в случае ограничений по времени и тогда, когда можно пойти на риск (очень малозначительный), что QUICK пропустит ошибку в файле данных. (Почти всегда MySQL должен отыскать - при обычной работе - любые ошибки в файле с данными. Если ошибки найдены, то таблица будет отмечена как 'покоробленная/corrupted', и в таком случае ее нельзя будет использовать, пока она не будет исправлена.)


SQL запросы. Уровни изолированности транзакций в реляционных базах данных.

FAST и CHANGED приемущественно созданы для использования в сценариях (к примеру, для пуска из cron), если нужно временами инспектировать таблицы. Почти всегда следует отдавать предпочтение FAST перед CHANGED (по другому нужно поступать исключительно в случае, когда появляется подозрение, что найдена ошибка в самом коде MyISAM).

Прибегать к EXTENDED следует только тогда, когда после выполнения обычной проверки для таблицы как и раньше выдаются странноватые ошибки при попытке MySQL обновить строчку либо отыскать строчку по ключу (что очень маловероятно в случае фуррора обычной проверки!).

Некие трудности, о которых сообщается при проверке таблицы, нельзя поправить автоматом:

Found row where the auto_increment column has the value 0.

Это значит, что в таблице есть строчка, где индексированный столбец AUTO_INCREMENT содержит значение 0 (строчку, в какой столбец AUTO_INCREMENT имеет значение 0, можно сделать, очевидно установив столбец в 0 командой UPDATE).

Это само по себе не является ошибкой, но может вызвать проблемы, если пригодится сделать дамп таблицы либо вернуть ее либо выполнить над ней ALTER TABLE. В данном случае столбец с атрибутом AUTO_INCREMENT изменит значение в согласовании с правилами для столбцов AUTO_INCREMENT, что может вызвать трудности, подобные ошибке дублирования ключа.

Чтоб избавиться от предупреждения, просто сделайте команду UPDATE для установки в столбце значения, хорошего от 0.

rss