adampetrie
adampetrie

Reputation: 1150

Sequelize Sync vs Migrations

Im learning Sequelize and I'd like some clarification around syncing vs migrations.

I understand that sync will create missing tables based on my model schema but I have also read that sync is meant for initializing the database whereas migrations are meant for production.

If that is the case, the express-example shows calling sync from bin/www. Is that something that should not be used in production?

As an extension of this, if I am not to use sync in production, how do you apply model associations? Do I need to add them to migrations manually?

Essentially I am asking for an explanation of how these two concepts are meant to work together.

Thanks

Upvotes: 52

Views: 22866

Answers (1)

Keval
Keval

Reputation: 3326

I recommend using sequelize migrations in development and production so that you are fully acclimate with the process which will give safe results, also sequelize sync without force will only create new tables with the specified schema which are not present in database, it wont reflect alterations in existing table schema. Sequelize migrations will help you update your database in a systematic and incremental manner.

Refer this page for more on this.

Sequelize.js: how to use migrations and sync

http://corpus.hubwiz.com/2/node.js/21105748.html

Upvotes: 46

Related Questions