1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/mirrors-keycloak

Клонировать/Скачать
updating-database-schema.md 3.6 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 26.11.2024 03:20 34f1376

Обновление схемы базы данных

Keycloak поддерживает автоматическое обновление базы данных до новой версии. Это делается путём применения одного или нескольких наборов изменений к существующей базе данных. Это означает, что если вам необходимо внести какие-либо изменения в схему базы данных, вам нужно создать набор изменений, который может преобразовать схему, а также любые существующие данные.

Это включает изменения:

  • сущностей Realm;
  • пользовательских сущностей;
  • сессий пользовательских сущностей;
  • событийных сущностей.

Создание набора изменений

Мы используем Liquibase для поддержки обновления базы данных. Наборы изменений находятся в model/jpa/src/main/resources/META-INF (../model/jpa/src/main/resources/META-INF). Существует отдельный файл для каждого выпуска, требующего изменений в базе данных.

Чтобы вручную создать набор изменений, добавьте новый файл в указанном выше месте с именем jpa-changelog-<version>.xml. Этот файл должен содержать один набор изменений с идентификатором, равным следующей версии, которая будет выпущена, и автором, установленным на значение keycloak. Затем ознакомьтесь с документацией Liquibase о том, как написать этот файл. Другим вариантом может быть просмотр существующих наборов изменений для вдохновения и создание вашего набора изменений на их основе. Добавьте ссылку на этот файл в jpa-changelog-master.xml (../model/jpa/src/main/resources/META-INF/jpa-changelog-master.xml). Файл должен иметь один набор изменений, и идентификатор набора изменений должен быть следующей версией, которая будет выпущена.

Тестирование миграции базы данных

Первым шагом может быть перестройка Keycloak и проверка того, полностью ли запущен сервер. Это означает, что сервер можно запустить против пустой БД с вашими изменениями. Вы можете либо использовать тестовый сервер на основе встроенного undertow, либо собрать полностью дистрибутив. Подробнее см. в building.md и tests.md. Также см. tests-db.md для тестирования на более производственной базе данных, отличной от H2.

После этого рекомендуется выполнить миграцию БД. Подробнее см. testsuite/integration-arquillian/HOW-TO-RUN.md#db-migration-test.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/mirrors-keycloak.git
git@api.gitlife.ru:oschina-mirror/mirrors-keycloak.git
oschina-mirror
mirrors-keycloak
mirrors-keycloak
main