Есть список sql файликов, которые необходимо загрузить в базу. Пользуюсь yii2 и его миграциями.
В папке лежит 10-15 файлов каждый по 6-9 Мб.
Бегу по ним и выполняю каждый друг за другом.
Загружаются почти все файлы и вылетает ошибка о том, что память закончилась.
Я предполагаю, что после чтения очередного файлика память не чистится, но могу ошибаться. Прошу помочь.
Вот скрипт:
class m180619_114125_fill_base extends Migration
{
protected $filesDir = '/dumps/data/';
/**
* {@inheritdoc}
*/
public function safeUp()
{
$filesDir = Yii::getAlias('@console'.$this->filesDir);
$globMask = $filesDir.'*.sql';
$files = glob($globMask);
if (!$files) {
echo "Файлы для импорта базы не найдены\n";
return false;
}
foreach ($files as $filePath) {
$this->importFile($filePath);
}
return true;
}
/**
* {@inheritdoc}
*/
public function safeDown()
{
return false;
}
/* HELPERS */
protected function importFile($filePath)
{
$file = fopen($filePath, "r");
$this->execute(fread($file, filesize($filePath)));
fclose($file);
}
}
class m180619_114125_fill_base extends Migration
{
protected $filesDir = '/dumps/data/';
/**
* {@inheritdoc}
*/
public function safeUp()
{
$filesDir = Yii::getAlias('@console'.$this->filesDir);
$globMask = $filesDir.'*.sql';
$files = glob($globMask);
if (!$files) {
echo "Файлы для импорта базы не найдены\n";
return false;
}
foreach ($files as $filePath) {
$this->importFile($filePath);
}
return true;
}
/**
* {@inheritdoc}
*/
public function safeDown()
{
return false;
}
/* HELPERS */
protected function importFile($filePath)
{
$file = fopen($filePath, "r");
$this->execute(fread($file, filesize($filePath)));
fclose($file);
unset($file);
}
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Передаю данные массива, но к каждому значению добавляются кавычки, в связи с чем график не отписываетсяЕсли передаю просто переменную, тоже...
Ранее я всегда подключал bootstrap онлайн, но теперь мне надо чтобы bootsrap был в самом laravel (версия 54), и была возможность его подключить
Работаю в PHPНужно заменить все ссылки, в которых присутствует расширение jpg, png и т