MySQL

:: DEVELOPER ZONE

Login / Register

  • MySQL.com
  • Developer Zone
  • Partners
  • Online Shop
  • Downloads
  • Documentation
  • Forums
  • Lists
  • Bugs
  • Events
  • User Groups
  • Guilds
  • Blogs
  • Support
  • Resources
  • Books
  • FAQ

Справочное руководство по MySQL 4.0. :: A Проблемы и распространенные ошибки :: A.2 Распространенные ошибки при использовании MySQL :: A.2.10 Ошибка The table is full

  • Overview
  • MySQL Reference Manual
  • MaxDB Documentation
  • Connectors

Search the MySQL manual:


  • Справочное руководство по MySQL 4.0.

  • A.2 Распространенные ошибки при использовании MySQL
  • A.2.1 Ошибка Access denied
  • A.2.2 Ошибка MySQL server has gone away
  • A.2.3 Ошибка Can't connect to [local] MySQL server
  • A.2.4 Ошибка Host '...' is blocked
  • A.2.5 Ошибка Too many connections
  • A.2.6 Ошибка Some non-transactional changed tables couldn't be rolled back
  • A.2.7 Ошибка Out of memory
  • A.2.8 Ошибка Packet too large
  • A.2.9 Коммуникационные ошибки / Оборванные соединения
  • A.2.10 Ошибка The table is full
  • A.2.11 Ошибка Can't create/write to file
  • A.2.12 Ошибка в клиенте Commands out of sync
  • A.2.13 Ошибка Ignoring user
  • A.2.14 Ошибка Table 'xxx' doesn't exist
  • A.2.15 Ошибка Can't initialize character set xxx
  • A.2.16 Не найден файл (File not found)

Get the MySQL Language Reference and MySQL Administrator's Guide from MySQL Press!


Additional languages

  • German


Learn about new MySQL releases, technical articles, events and more.

Subscribe to the monthly MySQL Newsletter!


Previous / Next / Up / Table of Contents

A.2.10. Ошибка The table is full

Существует несколько случаев, когда выдается эта ошибка:

  • Используется старая версия MySQL (до 3.23.0), а размещенная в памяти временная таблица становится больше, чем tmp_table_size байтов. Для решения этой проблемы можно использовать опцию -O tmp_table_size=#, чтобы mysqld увеличил размер временных таблиц, или опцию SQL SQL_BIG_TABLES, перед тем как выдать сомнительный запрос (see Раздел 5.5.6, «Синтаксис команды SET»). Можно также запускать mysqld с опцией --big-tables - эффект здесь будет таким же, как и от использования SQL_BIG_TABLES для всех запросов. В версии MySQL 3.23 размещенные в памяти временные таблицы после того, как размер таблицы превысит tmp_table_size, автоматически преобразуются в расположенные на диске таблицы типа MyISAM.

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

  • Используются таблицы ISAM или MyISAM в операционной системе, которая поддерживает файлы размером до 2 Гб, и файл данных или индексный файл достигли этого предела.

  • Используются таблицы MyISAM, и размер требуемых данных или индекса превышает тот, который предусматривался MySQL при выделении указателей (если MAX_ROWS не указано в CREATE TABLE, MySQL выделяет указатели, предусматривающие размещение только 4 Гб данных). Проверить максимальные размеры данных/индекса можно посредством

    SHOW TABLE STATUS FROM database LIKE 'table_name';
    

    или с помощью myisamchk -dv база_данных/таблица. Если проблема связана с указателями, то это можно исправить с помощью команды наподобие следующей:

    ALTER TABLE table_name MAX_ROWS=1000000000 AVG_ROW_LENGTH=nnn;
    

    Указывать AVG_ROW_LENGTH нужно только для таблиц с полями типа BLOB/TEXT, поскольку в этом случае MySQL не может оптимизировать требуемое пространство, исходя только из количества строк.


This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.

Top / Previous / Next / Up / Table of Contents

© 1995-2005 MySQL AB. All rights reserved.

  • About MySQL
  • Careers
  • Site Map
  • Contact Us
  • Legal
  • Privacy Policy
  • Trademark Info
  • No Software Patents!