[Решено] MyISAM to InnoDB - косяк?

Автор LinuxID, 06 марта 2014, 09:30:06

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

LinuxID

При модернизации внутреннего сайта компании потребовалось перевести базу из MyISAM в InnoDB для поддержки транзакций.
Делаю экспорт структуры. Меняю MyISAM на InnoDB. Выполняю запрос:INSERT INTO tbl_new SELECT * FROM tbl_oldКурим 7-10 минут. Получаем в новой таблице на 192 926 строк больше. Начальная таблица имеет 11 130 014 строк. В новой таблице 11 322 940 строк. Я в шоке :o Что я не так сделал? Откуда лишние записи?
Правильно заданный вопрос - половина ответа!

qupl

LinuxID, а изначально tbl_new пустая была?

LinuxID

Правильно заданный вопрос - половина ответа!

qupl

truncate table tbl_new
select count(*) from tbl_old
INSERT INTO tbl_new SELECT * FROM tbl_old
select count(*) from tbl_new


Сообщение объединено: 06 марта 2014, 18:17:05

И проверить нет ли в tbl_new каких-нибудь триггеров.

LinuxID

mysql> SELECT count(*) FROM tbl_old -> 11940011
mysql> SELECT count(*) FROM tbl_new -> 11940011
ППЦ! Кто бы мог подумать что phpMyAdmin примерность свою так сильно округляет. Почти в 230 тыс. записей.
SELECT * FROM tbl_new - Отображает строки 0 - 29 ( ~12,160,944 всего , Запрос занял 0.0002 сек.)
Правильно заданный вопрос - половина ответа!