zoukankan      html  css  js  c++  java
  • Existing database setup

    These are the steps to follow to successfully integrate Flyway in a project with an existing database.

    Take a DDL and reference data extract from production

    First start by taking a snapshot of your most important database: production. This will be the starting point for migrations.

    Generate a sql script that includes the entire DDL (including indexes, triggers, procedures, ...) of the production database. To do this you will need to add insert statements for all the reference data present in the database.

    需要一次性导出现有数据库中的所有表以及存储过程

    This script will form your base migration. Save it on the classpath in the directory you configured with baseDir. Give it a relevant version number and description such as V1__Base_version.sql.

    Clean all databases containing data you don't mind losing

    Now comes the point where we have to make sure that the migrations meant for production will work everywhere.

    For all databases with unimportant data you don't mind losing, perform

    > flyway clean

    to completely remove their contents.

    Align the remaining databases with production

    Check all remaining databases. You must make sure that their structure (DDL) and reference data matches production exactly. This step is important, as all scripts destined for production will be applied here first. For the scripts to succeed, the objects they migrate must be identical to what is present in production.

    Give these databases a baseline version

    Now comes the time to baseline the databases that contain data (including production) with a baseline version. Use the same version and description you used for the production extract script created above.

    You can accomplish it like this:

    > flyway baseline

    You must perform this step for each database that hasn't been cleaned.

    Done !

    Congratulations ! You are now ready.

    When you execute

    > flyway migrate

    the empty databases will be migrated to the state of production and the others will be left as is.
    As soon as you add a new migration, it will be applied identically to all databases.

  • 相关阅读:
    文档中心 FetchURL Sina App Engine
    GroovyHelp使用指南 蛟龍居 BlogJava
    北京个人ADSL和企业ADSL有什么区别啊?
    手动编译cppserv0.1.99 @ apache2.2
    漫谈Web Service工作原理及.NET平台的实现机制
    Servlet与模板模式那些事
    [跟着hsp步步学习系统]oracle培训学习集锦全360度扫描(5)
    诺基亚死于大数据时代 上海唯一旗舰店关门
    苹果iPad强于分销渠道:平板领域将继续强势
    用友放弃野蛮生长战略 转型平台软件商
  • 原文地址:https://www.cnblogs.com/chucklu/p/12743906.html
Copyright © 2011-2022 走看看