目录
1.什么是部署?
2.如何部署?
2.1.本机连接远程mysql服务器(可选项)
2.2.在远程服务器mysql数据库上执行创建数据库、表的脚本
2.3.检查项目中连接mysql服务器的地址和密码是否正确
2.4.使用Maven打包项目,生成一个xxx.war包
2.5.将war包上传到tomcat的webapps目录下
2.6.重启tomcat,使用url地址访问项目
2.7.测试功能
PS:二次更新项目(第二次以上包含第二次)注意事项
1.什么是部署?
工作中涉及到的 "环境" :
- 开发环境:程序猿写代码用的机器。
- 测试环境:测试人员测试程序使用的机器,一般是退役的部署机器。
- 生产环境(线上环境):最终项目发布时所使用的机器,对稳定性要求很高。
把程序拷贝安装到生产环境上,这个过程称为"部署",也叫"上线"。
这个过程需要拷贝对应的 .class 文件和依赖的资源文件。(各种配置文件, html等)
一旦程序部署成功,那么这个程序就能被外网中千千万万的普通用户访问到。
换句话说,如果程序有 BUG,这个 BUG 也就被千千万万的用户看到了。
部署过程至关重要,属于程序开发中最重要的一环。一旦部署出现问题,极有可能导致严重的事故(服务器不可用之类的)。
为了防止部署出错,一般公司内部都有一些自动化部署工具(如 Jenkins 等)。当前我们先使用手工部署的方式来完成部署。
2.如何部署?
2.1.本机连接远程mysql服务器(可选项)
也可直接在服务器上操作。
2.2.在远程服务器mysql数据库上执行创建数据库、表的脚本
按照之前的数据库建表脚本,在服务器上运行,建立相同的表结构。
2.3.检查项目中连接mysql服务器的地址和密码是否正确
如果本地密码和服务器密码一致,此步骤可忽略。
- 这里可以写127.0.0.1,就是通过内网去连接的,最终程序要放到自己的远程服务器上,自己的远程服务器和mysql是在一台服务器上的,所以可以写127.0.0.1。
- 也可以写47.95.157.248自己的远程服务器外网ip,但是就多此一举了,因为在连接mysql时会先出去找这个外网,找到之后又回来了。
- 所以直接写内网127.0.0.1,其通信速度是会快很多的。
重点要检查密码是否一致。
2.4.使用Maven打包项目,生成一个xxx.war包
2.5.将war包上传到tomcat的webapps目录下
2.6.重启tomcat,使用url地址访问项目
先关闭tomcat:
检查:
再启动tomcat并检查:
在浏览器使用url地址访问项目:
2.7.测试功能
①如果出现500,后端sql报错:
将useSSL=true或false进行修改,重新打包,重启tomcat尝试。
PS:二次更新项目(第二次以上包含第二次)注意事项
要先停止tomcat,再更新程序,上传文件(war包),再启动tomcat,再次访问项目。
防止在更新时文件被占用,无法成功覆盖文件,导致更新失败。
②如果点击发布文章,页面没反应,报500错误:
500内部服务器异常,出错原因:程序代码写的有问题!
是mysql中文乱码问题:在创建数据库表时没有设置编码格式,且在Linux服务器上没有配置编码格式,导致不支持中文。
解决:
a.删除之前的数据库,重建一个。
b.修改某个表的编码格式(支持中文):
设置字符集在后,创建表在前,就会出现虽然设置了编码但还是插入中文失败的情况,此时可以通过修改某个表的字符集来将原来的表支持中文:
alter table 表名 convert to character set utf8mb4