如何将本地数据库服务器合并到 localhost 服务中?

时间:2021-03-10 14:45:38

标签: java mysql spring spring-boot

我最近一直在学习数据库的工作原理以及如何编写可以操作数据库的服务。所以情况如下: 我在本地主机服务器(XAMPP)上运行了一个 MySQL 数据库。访问数据库很简单:localhost:3036/my_database

除此之外,我写了一个Java Spring服务(实际上只是从https://github.com/spring-guides/gs-accessing-data-mysql.git复制了示例),它应该是一个接受curl请求并基于它们来操作数据库的接口。到现在为止还挺好。一切正常。问题是该服务也在本地主机地址上运行:localhost:8080

我想在我的 Spring 服务中实现 MySQL 服务器,这样我就可以运行这个服务,数据库将运行并托管在同一个端口上。数据应该仅通过此服务可用,因此我不希望在不同的本地主机端口上运行额外的独立 MySQL 服务器。 归根结底,我想生成一个可执行的 jar 文件,该文件在运行时为我提供本地主机地址上的服务并无缝处理本地存储的数据库。

编辑: 我不希望我的数据库独立于服务。我不想负责运行它并连接到服务。我正在搜索的内容类似于以下答案中提到的 @jr593,嵌入式数据库。但是这样的数据库是否有可能将数据保存在服务运行的设备上本地运行 beetwen 服务?

1 个答案:

答案 0 :(得分:0)

对此有一些解决方案。

  1. 更改 Java 应用程序的端口。它是 Spring Boot,您可以检查属性 server.port 并将其设置为例如 8081。
  2. 您可以检查端口 8080 上 XAMPP 的运行情况并关闭它(可能是 apache 或其他)
  3. 您不需要 XAMPP 在本地主机上安装 MySQL。您可以停止/删除 xampp 并安装独立的 MySql,因此您将只使用端口 3036 和 nat 8080 和 3036。
  4. 您可以将 Docker 与 MySql 映像一起使用,而不是 XAMPP。