Spring Boot 4 Complete Guide · Урок

Миграции баз данных с Flyway

Безопасно и воспроизводимо управляйте изменениями схемы в разных окружениях, используя версионируемые миграции Flyway в Spring Boot.

Урок 4 из 413 шагов

«Миграции баз данных с Flyway» — бесплатный урок Spring Boot 4 Complete Guide на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Spring Boot 4 Complete Guide, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Spring Boot 4 Complete Guide содержит 4 уроков всего.

Части этого урока еще не переведены и отображаются на английском.

The Problem with Manual Schema Changes

Editing the database by hand is error-prone and hard to reproduce across dev, test, and production. Migrations turn schema changes into versioned, repeatable scripts.

What Is Flyway?

Flyway is a migration tool that applies SQL scripts in order, tracking which have run in a history table so each runs exactly once.

Adding Flyway

Spring Boot auto-detects Flyway on the classpath and runs migrations at startup. Just add the dependency.

<dependency>
  <groupId>org.flywaydb</groupId>
  <artifactId>flyway-core</artifactId>
</dependency>

Migration File Naming

Versioned scripts follow the pattern V1__description.sql. The version number after V determines execution order.

  • V1__create_users.sql
  • V2__add_email_column.sql

Where Migrations Live

By default Flyway looks in src/main/resources/db/migration. Place your SQL files there and they are picked up automatically.

A First Migration

Your first script typically creates a table. Once applied, Flyway records it and never runs it again.

CREATE TABLE users (
  id BIGINT PRIMARY KEY,
  name VARCHAR(100) NOT NULL
);

The Schema History Table

Flyway maintains a flyway_schema_history table recording each applied version, its checksum, and timestamp. This is how it knows what is pending.

Never Edit Applied Migrations

Once a migration has run anywhere, treat it as immutable. Editing it changes the checksum and Flyway will fail validation. Always add a new migration instead.

ALTER TABLE users ADD COLUMN email VARCHAR(200);

Repeatable Migrations

Scripts prefixed with R__ instead of a version run whenever their content changes. They are ideal for views and stored procedures.

Flyway and JPA Together

Disable Hibernate's auto schema generation and let Flyway own the schema. This gives you a single, reliable source of truth for structure.

spring.jpa.hibernate.ddl-auto=validate

Benefits in CI/CD

Because migrations run automatically and deterministically, every environment converges to the same schema, making deployments predictable and rollbacks easier to reason about.

Quick Check

Test your understanding of Flyway migrations.

Recap

You learned to version schema changes with Flyway: naming conventions, the history table, immutability of applied scripts, repeatable migrations, and pairing Flyway with JPA validation for reliable deployments.

Можно начать бесплатно

Изучай Java с ИИ-репетитором — бесплатно

Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.

Курсы
21
Уроки
84

Часто задаваемые вопросы

Урок «Миграции баз данных с Flyway» бесплатный?

Да — полный текст урока «Миграции баз данных с Flyway» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Spring Boot 4 Complete Guide, подпишись на CoddyKit PRO. Курс Spring Boot 4 Complete Guide содержит 4 уроков всего.

Чему я научусь в уроке «Миграции баз данных с Flyway»?

Безопасно и воспроизводимо управляйте изменениями схемы в разных окружениях, используя версионируемые миграции Flyway в Spring Boot. Ты практикуешь Spring Boot 4 Complete Guide с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Spring Boot 4 Complete Guide?

Предыдущий опыт не требуется. Spring Boot 4 Complete Guide на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.

Сколько времени занимает урок «Миграции баз данных с Flyway»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Spring Boot 4 Complete Guide?

Да. Каждый урок Spring Boot 4 Complete Guide включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Пользовательские репозитории Spring Data
  2. Интеграция баз данных NoSQL
  3. Кэширование с помощью Spring Cache
  4. Миграции баз данных с Flyway
← Назад к Spring Boot 4 Complete Guide