tomcat 和 mysql 时部署在同一台服务器上,都是开机启动 重启服务器后 tomcat 中的项目需要连接 mysql,这个时候 mysql 还没有启动成功,会导致项目启动失败,必须手动重新启动 tomcat 才能正常访问 请问各位大佬有没有什么办法可以控制 tomcat 和 mysql 的启动顺序或其他的解决办法。
1
xx6412223 2020-09-17 13:43:21 +08:00
写脚本启动 mysql 后,轮询监听启动成功后再启动 tomcat
|
2
des 2020-09-17 13:58:59 +08:00
参考“Docker Compose 控制启动顺序”的方法,用 wait-for-it 脚本
https://docs.docker.com/compose/startup-order/ |
3
MeteorCat 2020-09-17 14:27:06 +08:00 via Android 1
方法一:
在 systemd 的 Tomcat.service 当中的[Unit]追加个 After=myself.service 方法二: 在 systemd 的 Tomcat.service 当中的[Service]追加个 ExecStartPre=/bin/sleep 3 |
6
MeteorCat 2020-09-17 14:46:35 +08:00 via Android
@lskjdfgl window 系统服务有个延缓启动选项,计算器管理 - 服务和应用程序 - 服务找到 tomcat 服务之后有自动(延迟启动);
不过这种方法我个人情况用的,正式我没用过 window 服务器 |
7
kingright 2020-09-17 14:47:03 +08:00
Windows 设置 tomcat 服务的依赖,指向 MySQL
|
8
lskjdfgl OP |
9
zjsxwc 2020-09-17 15:47:11 +08:00
docker healthcheck
|