本文结合阿里云ECS轻量服务器的使用体验,记录了自己通过使用XSHELL和XFTP在安装jdk、数据库和Tomcat后部署项目到Linux上的过程中所遇到的问题。
问题概述
本地IDEA已经连接上远程安装在Linux服务器上的MySQL数据库并且可以成功跑起来。但是打成war包上传到Linux后却无法实现调用连接数据库的问题。
问题详情
我首先通过使用XSHELL和XFTP在安装jdk、数据库和Tomcat后部署项目到Linux上。在本地的IDEA上,本人已经连接上远程安装在Linux服务器上的MySQL数据库了,在localhost上能够实现所有功能操作。但是当我打成war包上传到Linux后,登录网站却发现自己无法连接数据库。
IDEA和SQLyog也可以远程连接:
目前找出的有两个问题并成功解决:
首先想到可能是证书问题。所以我在数据库配置文件的jdbcUrl中把useSSL=true改为useSSL=false,但是问题仍没有解决。
主机IP地址我原本用的是ECS的公网IP地址,理应是没问题的,但是用上了
jdbcUrl=jdbc:mysql://公网IP/test?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true
后却出现连接失败的报错,后来改成127.0.0.1后问题才解决。最后的配置结果:
jdbcUrl=jdbc:mysql://127.0.0.1:3306/test?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true
接下来就是常规的打包上传操作了:
将项目打包成war包。
将war包通过Xftp 5传输到云服务器的
/www/server/tomcat/webapps/
目录下 tomcat会自动把项目war包解压。根据tomcat的web.xml
的配置,webapps目录下的war包都会自动解压。到Tomcat的bin目录下,输入关闭命令
./shutdown.sh
;然后再输入命令打开Tomcat./startup.sh
。就可以启动Tomcat了。cd /home cd Tomcat cd bin
执行:
startup.sh
-->启动tomcat。 执行:shutdown.sh
-->关闭tomcat。在浏览器地址栏中输入
公网IP:8080/项目名
。访问并调用数据库成功。
本文转载自飞天加速计划,作者为计算机类专业的大二学生:https://developer.aliyun.com/article/791951