Não consigo criarDatabase no Spring boot

Não consigo criar Database quando rodo o projeto. Preciso criar o database manualmente, mas depois de criado, cria normalmente as tables com os atributos.

# ===============================
# = DATA SOURCE
# ===============================
# datasource PostgreSQL
spring.datasource.url = jdbc:postgresql://localhost:5432/algafood?createDatabaseIfNotExist=true&useSSL=false
spring.datasource.username=postgres
spring.datasource.password=admin

# Show or not log for each sql query
spring.jpa.show-sql=true
# Hibernate ddl auto (create, create-drop, update): with "create-drop" the database
# schema will be automatically created afresh for every start of application
spring.jpa.hibernate.ddl-auto=update

# Allows Hibernate to generate SQL optimized for a particular DBMS
#spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect

# Disable feature detection by this undocumented parameter. Check the org.hibernate.engine.jdbc.internal.JdbcServiceImpl.configure method for more details.
spring.jpa.properties.hibernate.temp.use_jdbc_metadata_defaults = false

# Because detection is disabled you have to set correct dialect by hand.
spring.jpa.database-platform=org.hibernate.dialect.PostgreSQL9Dialect





# ===============================
# = JPA / HIBERNATE
# ===============================
spring.jpa.database-plataform=org.hibernate.dialect.PostgreSQLDialect
spring.jpa.properties.hibernate.show_sql=true
spring.jpa.properties.hibernate.format_sql=true





O banco vc vai ter que criar mesmo.
O Hibernate vai gerenciar a estrutura no banco/esquema, não o SGBD.
Se vc parar para pensar, não faz muito sentido mesmo né?

Verdade, mas vi um exemplo no Mysql e o mesmo criava o database, já o postgres não. Valeu pela ajuda!

Estes parâmetros de URL createDatabaseIfNotExist=true&useSSL=false de conexão só se aplicam ao MySQL e MariaDB, no seu caso que está utilizando o PostgreSQL eles não são aplicáveis!

Para o PostgreSQL e vários outros bancos de dados é necessário a criação de forma manual!

1 curtida

Obrigado pela dica! Valeu.