Mysql
 sql >> Database >  >> RDS >> Mysql

Esiste un modo Laravel per eseguire un file .SQL per caricare i dati

Non c'è un modo per importare un dump DB pronto all'uso usando artisan . Tuttavia, puoi creare un artisan personalizzato comando:

php artisan make:console DbImportCommand

e poi chiedigli di emettere un comando come:

DB::unprepared(file_get_contents('full/path/to/dump.sql'));

Tuttavia, può essere vantaggioso creare un comando che esegua un seeder (o un set di seeder).

php artisan make:console importHistoricalData

e poi fai in modo che eseguano seeders specifici:

$this->call(OldCompanySeeder::class);
$this->call(OldEmployeeSeeder::class);
// etc....

Se a un certo punto cancelli il database o ti sposti in un nuovo ambiente, è semplice come eseguire di nuovo i seeders.