LINUX.ORG.RU

MYSQL


0

0
вообщем в сабже нужно создать таблицу с большим числом записей. mysql разрешил заисать только 65535 записей - а далее говрит - таблица переполнена. че делать то
anonymous
postgresql, oracle etc
anonymous
()
Можно попробовать написать свою функцию которая при переполнении одной таблицы будет создавать другую и писать данные уже в нее.
knoppix
()
Ого, я даже и не знал о таком ограничении...
anonymous
()
нет такого ограничения... по крайней мере в 4.1
спокойно себе работает с таблицами в несколько миллионов записей(myisam,innodb).
может вы используете какой-то особенный storage engine ?
anonymous
()
Ответ на: комментарий от anonymous
А что конкретно mysql при этом говорит ?
вот тестовый примерчик:
create table test(
test_id int primary key auto_increment,
test_value char(10) not null
) engine=innodb;

delimiter //
create procedure fill_test(in n int)
begin
  WHILE n > 0 DO
       insert into test (test_value) values(n);
       SET n = n - 1;
  END WHILE;
END //
delimiter ;

mysql> CALL fill_test(100000);
Query OK, 1 row affected (1 min 20.64 sec)

Работает :)
anonymous
()
Ответ на: комментарий от anonymous
Данные в таблицу загоняются импортом из файла, когда наступает запись 65553, то после нее при попытке ручного воода данных через insert говорит Ошибка 1411 Таблица переполнена. Почитав документацию нашел опцию --big-tables которая якобы должа избавить от больщинства таких ошибок но она почему по не исправила
anonymous
()
Что за бред?!?!? Никогда такого ограничения не было! Юзаю таблицы с сотнями тысяч записей и ничего - шуршит себе спокойно причём сменил уже несколько версий MySQL от 3.23 до 4.1.14
Ubnormal
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.