How to Migrate SQL dump file with Laravel

January 29, 2018 By - Usama Muneer | 237

    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

    While Developing applications in Laravel, there comes situations where you have date in simple string format. For instance getting raw response from an API. But you want to convert that string into Carbon instance and use the Carbon helpers on it. Well there's a simple solution to it.

    Laravel ships in with the awesomeness of Database Migrations which allows you to version control your database. But there are number of events when you are required to change the datatypes or attributes assigned to your table columns inside of your migrations.

    Sometimes you need to provide dropdowns in your exported excel files for more enhanced look on the data. Here's how we can achieve it.

    Exporting Excel files come handy when you're building some inventory kind of an application. In this short tutorial, we'll go through on exporting excel files with Laravel & look on for some crazy hacks and tricks in between.