The term Database Migration



  • I'm curious, when I first heard of the term database migration, it was unequivocally pertaining to moving entire databases from one platform to another.

    However, recently I had to build a server that required setting up a database myself. Then I chanced up this python library called Alembic. Apparently it is called a "database migration" tool as well when it's sole purpose, to speak out of turn, is a git of sorts for database. This is personally confusing for me. Could some one shed light on the difference between the database migration I understand and database migration as a tool for tracking changes to the database.

    Again I might be ignorant and possibly missing out on some of these obvious differences but would really appreciate it if someone could enlighten me.



  • Personally, I understand database migration the same way as you. However, I am not sure whether there is a single formal definition. Possibly like many other computing jargon, every one has their own definition.

    In Wikipedia (since everyone can edit articles, this shows how the same term is used differently by different people):

    • The https://en.wikipedia.org/wiki/Schema_migration page describes the activity performed by Alembic. It claims this also called also "database migration". Ruby on Rails simply calls this activity "migrations"
    • The "Database migration" subsection of https://en.wikipedia.org/wiki/Data_migration page describes it as "to move from one database vendor to another, or to upgrade the version of database software being used. ", so it matches our understanding.

Log in to reply
 


Suggested Topics

  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2