java – Flyway数据库迁移到多个模式
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java – Flyway数据库迁移到多个模式,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1501字,纯文字阅读大概需要3分钟。
内容图文
![java – Flyway数据库迁移到多个模式](/upload/InfoBanner/zyjiaocheng/912/39ab562fe1aa42c6ae295dd87a876045.jpg)
我为我的多租户应用程序设置了一个迁移脚本.问题是.它只生成我在参数上指定的第一个租户/架构的脚本.这是我的sql脚本
drop table if exists ADMIN_ACCOUNT cascade;
drop table if exists PERSON_NAME cascade;
drop table if exists USER_ACCOUNT cascade;
create table ADMIN_ACCOUNT (
id int8 not null,
created_date timestamp,
PASSWORD varchar(255),
USERNAME varchar(255),
membershipType varchar(255),
NAME_ID int8,
primary key (id)
);
create table PERSON_NAME (
id int8 not null,
created_date timestamp,
FIRST_NAME varchar(255),
LAST_NAME varchar(255),
MIDDLE_NAME varchar(255),
account_id int8,
primary key (id)
);
create table USER_ACCOUNT (
id int8 not null,
created_date timestamp,
PASSWORD varchar(255),
USERNAME varchar(255),
ROLE varchar(255),
TENANT_CODE varchar(255),
NAME_ID int8,
primary key (id)
);
alter table ADMIN_ACCOUNT
add constraint FK_fil1krx8k0osj713tg44ia0vu
foreign key (NAME_ID)
references PERSON_NAME;
alter table PERSON_NAME
add constraint FK_hc1g7pa0rseytw9o1pcuo0mpw
foreign key (account_id)
references USER_ACCOUNT;
alter table USER_ACCOUNT
add constraint FK_ib2pk4at20vxm3onaoro6ry2r
foreign key (NAME_ID)
references PERSON_NAME;
这是我输入到flyway mvn compile flyway的命令:migrate -Dflyway.schemas = tenant3,tenant4,tenant5 -Dflyway.baselineOnMigrate = true
它只生成第一个租户的表,即tenant3.
这是一个错误吗?还是错过了什么?
解决方法:
要创建多个相同的模式,您必须为每个模式调用一次Flyway,并将flyway.schemas属性设置为正确的值.然后,Flyway会将正确的模式设置为默认模式,从而使您的迁移脚本不会更改(只要您不为对象名称添加前缀).
内容总结
以上是互联网集市为您收集整理的java – Flyway数据库迁移到多个模式全部内容,希望文章能够帮你解决java – Flyway数据库迁移到多个模式所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。