In this post, you will learn about how to configure MySQL properties in your Spring Boot application for deploying it on Google AppEngine (Standard) environment. This article assumes that the MySQL database is set up as part of Google Cloud SQL fully-managed database service. The following will be covered:
- Configuration properties in Application.properties
- Configure POM entries in pom.xml file
Configuration properties in Application.properties
In application.properties file, while working with Spring Boot app with JPA repository, you need to have following configuration properties in application.properties file. The below assumes that you have a MySQL database with name as dbname and username/password as root/root.
spring.cloud.gcp.sql.database-name=dbname spring.cloud.gcp.sql.instance-connection-name=dbname:region:instance-id spring.cloud.gcp.sql.database-type=mysql spring.datasource.username=someUsername spring.datasource.password=somePassword
In above properties, the instance connection name can be obtained from the project Cloud SQL page whose link could look like https://console.cloud.google.com/sql/instances?project=projectName
While working in local environment, you could comment above properties and use the following:
spring.datasource.url=jdbc:mysql://localhost:3306/dbname spring.datasource.username=root spring.datasource.password=root
POM entry in POM.xml file
The following POM entry needs to be put in pom.xml file.
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-gcp-starter-sql</artifactId> <version>1.0.0.M1</version> </dependency>
While working in the local environment, one could comment above and rather use following POM entry:
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency>
References
- The App Engine Standard Environment
- Google App Engine Java Standard Environment Documentation
- Google Cloud SQL
Summary
In this post, you learned about how to configure MySQL properties in Spring Boot app for deploying it on Google App Engine (Standard) environment.
Did you find this article useful? Do you have any questions or suggestions about this article? Leave a comment and ask your questions and I shall do my best to address your queries.
- Agentic Reasoning Design Patterns in AI: Examples - October 18, 2024
- LLMs for Adaptive Learning & Personalized Education - October 8, 2024
- Sparse Mixture of Experts (MoE) Models: Examples - October 6, 2024
I found it very helpful. However the differences are not too understandable for me