Skip to content

Глава 1. Общая информация

]]>Печать]]> E-mail
Оглавление
Глава 1. Общая информация
1.1. Об этом руководстве
1.2. Соглашения, используемые в данном руководстве
1.3. О русском переводе руководства
1.3.1. Список терминов, принятых в русском переводе
1.4. Что представляет собой MySQL?
1.4.1. История MySQL
1.4.2. Основные возможности MySQL
1.4.3. Насколько стабильным является MySQL?
1.4.4. Насколько большими могут быть таблицы в MySQL?
1.4.5. Вопросы, связанные с Проблемой-2000
1.5. Что представляет собой компания MySQL AB?
1.5.1. Бизнес-модель и услуги, оказываемые компанией MySQL AB
1.5.1.1. Поддержка
1.5.1.2. Обучение и сертификация
1.5.1.3. Консультации
1.5.1.4. Коммерческие лицензии
1.5.1.5. О нашей программе партнерства
1.5.1.6. О рекламе
1.5.2. Как с нами связаться
1.6. Лицензии и поддержка MySQL
1.6.1. Поддержка, предлагаемая компанией MySQL AB
1.6.2. Авторские права и лицензии на MySQL
1.6.3. Лицензии на ПО MySQL
1.6.3.1. Использование ПО MySQL под коммерческой лицензией
1.6.3.2. Бесплатное использование ПО MySQL по лицензии GPL
1.6.4. Логотипы и торговые марки MySQL AB
1.6.4.1. Оригинальный логотип MySQL
1.6.4.2. Логотипы MySQL, которые могут использоваться без письменного разрешения
1.6.4.3. В каком случае для использования логотипов необходимо письменное разрешение?
1.6.4.4. Партнерские логотипы MySQL AB
1.6.4.5. Использование слова MySQL в текстовых документах и презентациях
1.6.4.6. Использование слова MySQL в названиях компаний и продуктов
1.7. Кратко о MySQL 4.x
1.7.1. Поэтапный выпуск
1.7.2. Можно использовать уже прямо сейчас
1.7.3. Встроенный MySQL
1.7.4. Другие функции, доступные в MySQL 4.0
1.7.5. Функции MySQL 4.x, которые будут добавлены в будущем
1.7.6. MySQL 4.1, следующая ветка в разработке
1.8. Источники информации по MySQL
1.8.1. Списки рассылки MySQL
1.8.1.1. Списки рассылки MySQL
1.8.1.2. Как задавать вопросы и направлять сообщения об ошибках
1.8.1.3. Как отправлять отчеты об ошибках или проблемах
1.8.1.4. Рекомендации по ответам на вопросы, направляемые в список рассылки
1.8.2. Пользователи MySQL на IRC
1.9. Насколько MySQL соответствует стандартам?
1.9.1. Каким стандартам соответствует MySQL ?
1.9.2. Запуск MySQL в режиме ANSI
1.9.3. Расширения MySQL к ANSI SQL92
1.9.4. Отличия MySQL от ANSI SQL92
1.9.4.1. Вложенные SELECTы
1.9.4.2. Оператор SELECT INTO TABLE
1.9.4.3. Транзакции и атомарные операции
1.9.4.4. Хранимые процедуры и триггеры
1.9.4.5. Внешние ключи
1.9.4.6. Представления
1.9.4.7. Символы «--» как начало комментария
1.9.5. Известные ошибки и недостатки проектирования в MySQL
1.9.5.1. Ошибки, известные в 3.23 и исправленные в более поздних версиях MySQL
1.9.5.2. Открытые ошибки / особенности строения MySQL
1.10. MySQL и будущее (что предстоит сделать)
1.10.1. Что планируется реализовать в версии 4.0
1.10.2. Что планируется реализовать в версии 4.1
1.10.3. Что планируется реализовать в версии 5.0
1.10.4. Что должно быть сделано в ближайшем будущем
1.10.5. То, что надо сделать когда-нибудь
1.10.6. То, чего не планируется делать

1.4.4. Насколько большими могут быть таблицы в MySQL?

MySQL версии 3.22 имеет предел по размеру таблиц 4 Гб. В MySQL версии 3.23, где используется новый тип таблиц, максимальный размер таблицы доведен до 8 миллионов терабайтов (2 ^ 63 bytes).

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

Операционная система Ограничения на размеры файла
32-разрядная Linux-Intel 2Гб, 4Гб и более, в зависимости от версии Linux
Linux-Alpha 8T (?)
Solaris 2.5.1 2 Гб (с патчем возможно 4Гб)
Solaris 2.6 4Гб (может быть изменено при помощи указания флага)
Solaris 2.7 Intel 4 Гб
Solaris 2.7 UltraSPARC 512 Гб

В Linux 2.2 существует возможность создавать таблицы с размерами более 2 Гб, используя патч LFS для файловой системы ext2. Существуют также патчи, обеспечивающие поддержку больших файлов для ReiserFS в Linux 2.4.

Как можно видеть, размер таблицы в базе данных MySQL обычно лимитируется операционной системой.

По умолчанию MySQL-таблицы имеют максимальный размер около 4 Гб. Для любой таблицы можно проверить/определить ее максимальный размер с помощью команд SHOW TABLE STATUS или myisamchk -dv table_name. See Раздел 4.5.6, «Синтаксис команды SHOW».

Если необходимы таблицы большего размера, чем 4 Гб (и используемая операционная система ``не возражает''), следует при создании такой таблицы задать параметры AVG_ROW_LENGTH и MAX_ROWS (see Раздел 6.5.3, «Синтаксис оператора CREATE TABLE»). Эти параметры можно задать и позже - с помощью ALTER TABLE (see Раздел 6.5.4, «Синтаксис оператора ALTER TABLE»).

Если большая таблица предназначена только для чтения, можно воспользоваться myisampack, чтобы слить несколько таблиц в одну и сжать ее. Обычно myisampack ужимает таблицу по крайней мере на 50%, поэтому в результате можно получить очень большие таблицы (see Раздел 4.7.4, «myisampack, MySQL-генератор сжатых таблиц (только для чтения)»).

Есть еще одна возможность обойти ограничения операционной системы на размеры файлов данных MyISAM, - это делается при помощи опции RAID (see Раздел 6.5.3, «Синтаксис оператора CREATE TABLE»).

Еще одним решением может быть использование функции MERGE, которая обеспечивает возможность обрабатывать набор идентичных таблиц как одну таблицу (see Раздел 7.2, «Таблицы MERGE»).



Просмотров 7756