启动 SpringBoot 应用程序时使用 JDBC 驱动程序创建 Postgres 数据库?

Posted

技术标签:

【中文标题】启动 SpringBoot 应用程序时使用 JDBC 驱动程序创建 Postgres 数据库?【英文标题】:Creating a Postgres database with JDBC Driver when starting a SpringBoot app? 【发布时间】:2021-08-07 10:28:38 【问题描述】:

当我想在 Springboot 应用程序中使用 mysql 数据库时,我可以通过类似于以下属性的字符串在启动时创建它:

spring.datasource.jdbc-url=jdbc:mysql://localhost:3306/testDb?createDatabaseIfNotExist=true&autoReconnect=true&useSSL=false&allowPublicKeyRetrieval=true

不过 PostgreSQL 似乎忽略了这一点:

spring.datasource.jdbc-url=jdbc:postgresql://localhost:5432/testdb?createDatabaseIfNotExist=true&autoReconnect=true&useSSL=false&allowPublicKeyRetrieval=true

有没有办法在 Flyway 尝试启动表之前在 SpringBoot 应用程序启动时创建 PostgreSQL 数据库?

【问题讨论】:

【参考方案1】:

Postgres 不支持通过 JDBC URL 按需创建数据库。您可以在documentation 中了解可以进行哪些配置。

【讨论】:

以上是关于启动 SpringBoot 应用程序时使用 JDBC 驱动程序创建 Postgres 数据库?的主要内容,如果未能解决你的问题,请参考以下文章

java jdb命令详解

使用 jdb 调试 Java servlet。如何将 jdb 与 Tomcat 连接

启动 SpringBoot 应用程序时使用 JDBC 驱动程序创建 Postgres 数据库?

SpringBoot启动jar包时设置临时属性

解决JAVA单步调试键盘输入被JDB占用的问题

在使用 Springboot 运行集成测试时启动嵌入式 gRPC 服务器