title: What is a good workflow for database migration in Grails?
body: <p>I want to use the <a href="http://grails.org/plugin/database-migration" rel="noreferrer">database-migration</a> grails plugin for database migration. When I start my Grails app the first time all the database tables are created automatically. The production setting in my DataSource.groovy is:</p>
  
  <pre><code>production {
  
  
      dataSource {
          dbCreate = "update"
          url = "jdbc:mysql://localhost/myapp?useUnicode=yes&amp;characterEncoding=UTF-8"
          username = "test"
          password = "test"
          dialect = org.hibernate.dialect.MySQL5InnoDBDialect
          properties {
             validationQuery = "select 1"
             testWhileIdle = true
             timeBetweenEvictionRunsMillis = 60000
          }
      }
  }
  </code></pre>
  
  <p>In my config.groovy I set: </p>
  
  <pre><code>grails.plugin.databasemigration.updateOnStart = true
  grails.plugin.databasemigration.updateOnStartFileNames = ['changelog.groovy']
  </code></pre>
  
  <p>When I add properties to my domain classes I need to adjust the changelog file.
  What is the best way to do database migration in this case? What are the steps I have to do when I add or remove columns?</p>