ssm项目部署到服务器的问题

本文主要讨论了SSM项目部署到服务器时遇到的两个问题:数据库连接密码统一和数据库连接断开。在部署前要确保数据库连接密码的一致性。对于数据库连接断开的问题,由于MySQL存在最大连接时限,文章提到了通过设置`autoReconnect`属性和使用c3p0数据库连接池来解决,c3p0能定期检查连接有效性,防止因超时导致的断开。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ssm项目部署到服务器的问题

1.1、部署之前:记得把数据库连接的密码统一

在这里插入图片描述

后面还有报错:
Connections could not be acquired from the underlying database!
连接不上数据库
我这里主要的原因就是数据库密码,因为我本地数据库的密码和服务器数据库的密码不一致

解决方式

如下图:

服务器端:
设置服务器端的root用户密码为123456

ssm框架:
本地测试完毕,准备部署前把数据库密码设置成和服务器一样:123456

这里只是做演示,密码还是设置得复杂点。。。

1.2、数据库连接断开的问题

mysql数据库存在最大连接时限,一般是8小时,超出时限时会出现数据库连接不上的问题

mysql5之前的版本,可以在jdbc连接的url中加入:autoReconnect = true

mysql5之后:

这个问题也可以通过修改mysql最大连接时限来解决,但似乎不是最佳的解决方式,因为一旦超出连接时限,服务器数据库的连接依然会断开。

目前我搜到的最优解:

使用c3p0数据库连接池,它有一个属性:

c3p0可以设置每隔一段时间检测连接是否有效

不知道其他连接池是不是也有一样的属性。。。

<!--设置每隔60s检测数据库连接是否有效-->
<property name="idleConnectionTestPeriod" value="60"/>

c3p0数据库连接池的使用:

  • 导入c3p0依赖
 <!-- 数据库连接池 -->
<dependency>
    <groupId>com.mchange</groupId>
    <artifactId>c3p0</artifactId>
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值