Поиск: MyISAM (114)
| Перенос на другие системы » Методы блокировки |
E.4 Методы блокировки
В настоящее время MySQL поддерживает только табличную блокировку для таблиц типов ISAM/MyISAM и HEAP, страничную блокировку для таблиц BDB и строковую блокировку для таблиц InnoDB (see section 5.3.1 Как MySQL блокирует таблицы). Для таблиц MyISAM можно произвольным образом сочетать команды INSERT и SELECT без блокировок, поскольку поддерживается управление версиями (Versioning). |
|
теги: MyISAM, DELETE, SELECT |
| |
| Перенос на другие системы » Создание контрольного примера при повреждении таблиц |
E.1.6 Создание контрольного примера при повреждении таблиц
Когда таблицы оказываются поврежденными или mysqld всегда дает сбой после некоторых команд, то можно провести испытания (если данный сбой воспроизводим). Для этого нужно выполнить следующие действия:
Остановите демон MySQL (с помощью команды mysqladmin shutdown).
Сделайте резервную копию таблиц (в качестве меры предосторожности на случай, если процесс исправления таблиц пройдет некорректно, хотя это и маловероятно). |
|
теги: mysqld |
| |
| Перенос на другие системы » Использование журналов для определения причин ошибок в mysqld |
E.1.5 Использование журналов для определения причин ошибок в mysqld
Обратите внимание: перед запуском mysqld с --log необходимо проверить все используемые таблицы с помощью myisamchk (see section 4 Администрирование баз данных).
Если демон mysqld умрет или зависнет, следует запустить mysqld с опцией --log. Если аварийное завершение mysqld снова повторится, то можно исследовать часть журнала, относящуюся к запросу, убившему mysqld. |
|
теги: SELECT, MyISAM |
| |
| Перенос на другие системы » Отладка сервера MySQL |
E.1 Отладка сервера MySQL
Если вы используете в MySQL совершенно новую функциональную возможность, то можно попробовать запустить mysqld с параметром --skip-new (при этом все новые, потенциально ненадежные функции будут заблокированы) или с параметром --safe-mode - он отключает ряд оптимизаций, которые могут вызвать проблемы. See section A.4.1 Что делать, если работа MySQL сопровождается постоянными сбоями. |
|
теги: TABLE |
| |
| Привнесенные программы » Разработчики MySQL AB |
C.1 Разработчики MySQL AB
Здесь представлен список разработчиков, занимающихся в настоящее разработкой программного обеспечения сервера баз данных MySQL в компании MySQL AB или занимавшихся этой разработкой ранее, приблизительно в том порядке, в котором они начинали работать с нами. После личных данных каждого разработчика следует небольшой список задач, за которые он отвечал, или выполненных им работ. |
|
теги: MyISAM |
| |
| Привнесенные программы » Клиенты |
B.2 Клиенты
Графические клиенты
http://www.ideit.com/products/dbvis/ DbVisualizer, свободнораспространяемый клиент JDBC для графической визуализации данных и структуры нескольких баз данных одновременно. Разработка Innovative-IT Development AB.
http://www.mysql.com/downloads/gui-clients.html MySQLGUI, веб-страница, посвященная клиенту MySQL GUI. Автор Синиша (Sinisa) из MySQL AB. |
|
теги: SQL |
| |
| Проблемы и распространенные ошибки » Проблемы со значением NULL |
A.5.3 Проблемы со значением NULL
Концепция NULL-значения часто вводит в заблуждение новичков в SQL, которые считают, что NULL - то же, что и пустая строка "". Это ошибка! Например, следующие команды совершенно различны:
mysql> INSERT INTO my_table (phone) VALUES (NULL);
mysql> INSERT INTO my_table (phone) VALUES (""); |
|
теги: NULL, INSERT, SELECT |
| |
| Проблемы и распространенные ошибки » Что делать, если работа MySQL сопровождается постоянными сбоями |
A.4.1 Что делать, если работа MySQL сопровождается постоянными сбоями
Перед официальным выпуском все версии MySQL тестируются на многих платформах. Это не означает, что в MySQL совсем нет ошибок, но если они и есть, то мало, и их не так просто отыскать. В любом случае, столкнувшись с какой-либо проблемой, всегда полезно попытаться точно определить, что вызывает аварию системы, - тогда шансы, что проблема будет устранена в скором времени, станут значительно выше. |
|
теги: MySQL, TABLE |
| |
| Проблемы и распространенные ошибки » Ошибка The table is full |
A.2.10 Ошибка The table is full
Существует несколько случаев, когда выдается эта ошибка:
Используется старая версия MySQL (до 3.23.0), а размещенная в памяти временная таблица становится больше, чем tmp_table_size байтов. Для решения этой проблемы можно использовать опцию -O tmp_table_size=#, чтобы mysqld увеличил размер временных таблиц, или опцию SQL SQL_BIG_TABLES, перед тем как выдать сомнительный запрос (see section 5.5.6 Синтаксис команды SET). Можно также запускать mysqld с опцией --big-tables - эффект здесь будет таким же, как и от использования SQL_BIG_TABLES для всех запросов. В версии MySQL 3.23 размещенные в памяти временные таблицы после того, как размер таблицы превысит tmp_table_size, автоматически преобразуются в расположенные на диске таблицы типа MyISAM. |
|
теги: InnoDB, SHOW |
| |
| Типы таблиц MySQL » Характеристики таблиц BDB |
7.6.4 Характеристики таблиц BDB
Чтобы обеспечить возможность отката транзакций, для таблиц BDB поддерживается ведение файлов журналов. Для достижения максимальной производительности эти файлы необходимо разместить на разных с базой данных дисках, воспользовавшись параметром --bdb_log_dir. |
|
теги: BDB |
| |
| Типы таблиц MySQL » Ограничения для таблиц InnoDB |
7.5.14 Ограничения для таблиц InnoDB
Предупреждение: НЕЛЬЗЯ преобразовывать системные таблицы MySQL из формата MyISAM в формат InnoDB! Эта операция не поддерживается, и если попытаться ее осуществить, MySQL не перезапустится, пока не будут восстановлены старые системные таблицы из резервной копии, или пока не будут созданы новые таблицы при помощи скрипта mysql_install_db. |
|
теги: InnoDB |
| |
| Типы таблиц MySQL » Дефрагментация таблицы |
7.5.12.3 Дефрагментация таблицы
Если в индексной таблице производились случайные вставки или удаления, индекс может стать фрагментированным. Под фрагментацией мы подразумеваем то, что физическое расположение индексных страниц на диске значительно отличается от алфавитного порядка страниц, или что в 64-страничных блоках много пустых страниц, которые занесены в индекс. |
|
теги: MyISAM |
| |
| Типы таблиц MySQL » Преобразование таблиц MyISAM в формат InnoDB |
7.5.4.1 Преобразование таблиц MyISAM в формат InnoDB
В InnoDB отсутствует специальная оптимизация создания отдельных индексов. Таким образом, этот формат не обеспечивает экспорта и импорта таблиц с последующим созданием индексов. Самый быстрый способ преобразовать таблицу в формат InnoDB - напрямую вставить данные в таблицу InnoDB, воспользовавшись командой ALTER TABLE ... TYPE=INNODB, или создать пустую таблицу InnoDB с такой же структурой и вставить строки при помощи команды INSERT INTO ... SELECT * FROM .... |
|
теги: InnoDB, SELECT |
| |
| Типы таблиц MySQL » Параметры запуска InnoDB |
7.5.2 Параметры запуска InnoDB
Чтобы использовать таблицы InnoDB в MySQL-Max-3.23, НЕОБХОДИМО задать параметры конфигурации в разделе [mysqld] файла конфигурации `my.cnf' или в файле параметров Windows `my.ini'.
В версии 3.23 как минимум необходимо указать innodb_data_file_path. |
|
теги: MySQL |
| |
| Типы таблиц MySQL » Обзор таблиц InnoDB |
7.5.1 Обзор таблиц InnoDB
Таблицы InnoDB в MySQL снабжены обработчиком таблиц, обеспечивающим безопасные транзакции (уровня ACID) с возможностями фиксации транзакции, отката и восстановления после сбоя. Для таблиц InnoDB осуществляется блокировка на уровне строки, а также используется метод чтения без блокировок в команде SELECT (наподобие применяющегося в Oracle). Перечисленные функции позволяют улучшить взаимную совместимость и повысить производительность в многопользовательском режиме. В InnoDB нет необходимости в расширении блокировки, так как блоки строк в InnoDB занимают очень мало места. Для таблиц InnoDB поддерживаются ограничивающие условия FOREIGN KEY. |
|
теги: SELECT, MySQL |
| |
| Типы таблиц MySQL » Таблицы HEAP |
7.4 Таблицы HEAP
Для HEAP-таблиц используются хэш-индексы; эти таблицы хранятся в памяти. Благодаря этому обработка их осуществляется очень быстро, однако в случае сбоя MySQL будут утрачены все данные, которые в них хранились. Тип HEAP очень хорошо подходит для временных таблиц! |
|
теги: mysql, CREATE |
| |
| Типы таблиц MySQL » Таблицы ISAM |
7.3 Таблицы ISAM
В MySQL пока еще можно применять и устаревший тип таблиц ISAM. В ближайшем времени этот тип будет исключен (возможно, в MySQL 4.1), так как MyISAM является улучшенной реализацией тех же возможностей. В таблицах ISAM используется индекс B-tree. Индекс хранится в файле с расширением `.ISM', а данные - в файле с расширением `.ISD'. Таблицы ISAM можно проверять/восстанавливать при помощи утилиты isamchk (see section 7.1 Таблицы MyISAM). |
|
теги: MyISAM, TABLE |
| |
| Типы таблиц MySQL » Проблемы при работе с таблицами MERGE |
7.2.1 Проблемы при работе с таблицами MERGE
При работе с таблицами MERGE могут возникать следующие проблемы:
Для таблицы MERGE не могут поддерживаться ограничения UNIQUE по всей таблице. При выполнении команды INSERT данные помещаются в первую или последнюю таблицу (в соответствии с INSERT_METHOD=xxx) и для этой таблицы MyISAM обеспечивается однозначность данных, но ей ничего не известно о первой таблице MyISAM.
Команда DELETE FROM merge_table без оператора WHERE очищает только распределение для таблицы, ничего не удаляя из преобразованных таблиц. |
|
теги: TABLE |
| |
Страницы: [ 1 ] - 2 - 3 - 4 - 5 - 6
|
|