How to Migrate SQL dump file with Laravel

Last Updated at : January 29, 2018 By - Usama Muneer | 2139

    Database Migrations are no doubt the best thing about Laravel, where your PHP code transforms into SQL with so less effort than usual. But what if you wanted to write a migration for a SQL dump file? Laravel has a way around for that too. I wouldn’t call it a proper solution. But it works great.

    Step # 01

    Create a normal migration file using artisan CLI

    php artisan make:migration create_my_table_migration --create=my_table

     

    Step # 02

    Inside the up method of your migration file, copy & paste the below code

    \DB::unprepared( file_get_contents( "link/to/dump.sql" ) );

     

    Additional Tip

    This works great for smaller dump files, but what if you’ve got a large file to migrate? We got you covered. It’s a bit dirtier but works just fine.

    Inside of your up method, before the linking to SQL file, add the following line of code.

    ini_set('memory_limit', '-1');
    \DB::unprepared( file_get_contents( "link/to/dump.sql" ) );

    You can also set memory limit inside your PHP.ini file. Totally up to you. But this saves a bunch of time i guess.

    blog user
    Usama Muneer

    A web enthusiastic, self-motivated & detail-oriented professional Full-Stack Web Developer from Karachi, Pakistan with experience in developing applications using JavaScript, WordPress & Laravel specifically. Loves to write on different web technologies with an equally useful skill to make some sense out of it.

    Related Posts

    Telescope gives knowledge into the solicitations coming into your application, exemptions, log sections, database questions, lined employments, mail, notices, reserve activities, planned errands, variable dumps and that's just the beginning.

    Laravel Live Islamabad, ended on 24th Nov'18 & we got a lot to learn from the top-notch of speakers & influencers. Thanks to the sponsors for pulling off such a great event in the capital of Pakistan.

    Previously Localization in Laravel was done by creating separate directories for each locales and place in under resources/lang/ and add key value pairs to every single keyword in a number of files as per their modules.

    Another #LaraconUS in the books & It was the 6th instalment of #LaraconUS happened at Chicago with full swing & we got a lot to learn this time with exceptional line of speakers and never-ending community support by fellow Artisans