博客主页:https://tomcat.blog.csdn.net
博主昵称:农民工老王
主要领域:Java、Linux、K8S
期待大家的关注💖点赞👍收藏⭐留言💬
最近帮一位研究生老师在阿里云轻量应用服务器上部署一套app后端,包含一个MySQL服务实例和一套Java代码。MySQL的部署是先用yum安装docker环境,然后在其中运行一个MySQL容器。Java的部署是先用yum安装jdk环境,然后运行java -jar ${jar文件}
即可。我是先部署和运行MySQL服务,再运行Jar文件。
整个部署的操作并不复杂,按道理说不应该出问题。但是运行启动Jar文件时,一直报数据库连接错误,如下图所示:
面对这个问题,我首先在本地的IDEA中测试启动,但没有任何报错。
然后我发现每次Java 在启动运行jar包的过程中,MySQL容器都会停止。即使在容器挂掉后,我马上去手工重启,MySQL容器也会在两三分钟内再次停止。
这就让人郁闷了,运行Jar包,就怎么会导致MySQL挂了呢?
最后意识到可能是这个阿里云轻量应用服务器的配置过低造成的,老师选购的服务器是最便宜的一档,1核CPU,1G内存。在启动Jar文件时,MySQL容器因为内存不足而停掉了。
找到原因,那问题就迎刃而解了。
解决方法有两个:
- 升级服务器配置。这是最简单直接的办法。
- 采用资源消耗更低的部署方式。
在本次部署中,我采用的是第二种方法,没有再使用和启动docker,而是才用传统的方法,直接在服务器上部署了一套MySQL服务。然后问题果然得到了解决。
如需转载,请注明本文的出处:农民工老王的CSDN博客https://blog.csdn.net/monarch91 。
来源地址:https://blog.csdn.net/monarch91/article/details/124970658