нужно вставить в mysql таблицу очень большое число строк. Как не положить сервак?

HelpFinder

Новичок
нужно вставить в mysql таблицу очень большое число строк. Как не положить сервак?

php скрипт должен вставить огромное количество строк в таблицу (список ссылок).
Пытался придерживаться следующего алгоритма
пока не конец файла{
получить ссылку;
проверить наличие её в таблице;
вставить ссылку в таблицу, если её нет там;
}

Этот скрипт запускается кроном на виртуальном хостинге, но в случае больших объёмов строк, сервер падает. выдаётся ошибка.
Как профессионалы подошли бы к решению этой проблемы, чтобы поменьше нагружать сервак?

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

niidil

Новичок
Я не профессионал, но зделал бы так:

1. Выкинул бы проверку наличия ссылки в таблицу. Для этого есть UNIQUE.
2. А дальше можно что-то типа этого
$query = 'INSERT INTO `links` (url, description)
VALUES ('site1.ru', 'site1'), ('site2.ru', 'site2'), ...';
mysql_query($query);
 

Фанат

oncle terrible
Команда форума
niidil
вот если ты не професионал, то надо читать и слушать, что говорят професионалы. а не влезать со своими советами.
 
Сверху