在云服务器中部署java web项目过程
文章中使用centos(6和7版本)、Xshell、Xftp
因为部署过程直接从操作服务器开始,如果你还没有连接好服务器请参考http://blog.csdn.net/ctrlxv/article/details/79054941
好,现在就当你已经有自己的服务器了,并且连接好了服务器和可以进行简单的服务器操作了;首先应该明白要想部署java web项目到服务器中,并且可以通过浏览器访问到你部署的java web项目需要安装jdk、tomcat、mysql;下面通过两种安装方法(安装包解压安装、yum源安装)来安装上面三个软件,具体步骤如下:
注:在安装软件之前需要查看下系统中是否已经安装了此软件(如:java --version 判断是否安装java,安装了会输出版本号)
一、安装配置jdk1.8(tomcat的运行依赖jdk,所以先安装)
0、使用命令“java -version”看系统中是否安装了jdk,如果没有任何输出说面没有安装,否则输出已安装版本;已安装请跳过,或者使用命令“rpm -e 软件名”进行卸载;
1、点击链接http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html进入官网、下载指定的安装包如下:
2、安装下载到任意目录
3、将下载的安装包通过Xftp上传到服务器中(也可以是其它可行的方法)
注:文件上传不清楚的参考http://blog.csdn.net/ctrlxv/article/details/79054941
4、通过Xshell登录到服务器中进入指定压缩包所在目录,使用命令“tar -zxvf 压缩包名”进行解压缩到当前目录,如下:
解压完成出现对应的文件夹,如下:
现在压缩包已经没有用了,可以删除,也可以留着,删除使用rm命令,如下:
5、配置jdk环境变量
使用"vim /etc/profile"进入profile文件按“i”进入插入模式,在文件的最后添加如下信息:
export JAVA_HOME=/opt/jdk1.8.0_151(jdk的安装目录)
export CLASSPATH=.:$JAVA_HOME/jre/ib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
最后按Esc进入命令模式,键入:wq保存并退出文件:
6、测试jdk是否安装成功
使用命令“java -version”查看刚安装的jdk版本;还可以键入:java或javac将输入一串信息说明安装成功。
二、安装配置Tomcat9
1、点击链接 https://tomcat.apache.org/download-90.cgi 进入Tomcat官网选择版本下载core中的tar.gz包:
2、将下载好的压缩包通过Xftp上传到服务器中,然后进行解压,最后删除压缩包:(具体步骤同jdk的安装)
3、Tomcat的配置(同jdk,在/etc/profile文件末尾加上下面配置)
4、安装配置完成,现在需要测试Tomcat之前的步骤是否成功:
进入tomcat的安装目录下的bin目录使用命令“./startup.sh”开启tomcat服务,见如下信息开启成功:
在任意浏览器中访问http://207.148.64.46:8080/,出现Tomcat的主页面说明安装配置成功。
注:如果服务器正常启动了但不能进行访问,可能是服务器没有将8080(tomcat默认端口)对外公开(默认不公开),需要到服务器管理控制台进行“添加安全组规则”开放8080端口。(具体操作请百度)
三、MySQL的安装配置(使用yum源安装)
0、安装前准备:
因为在 centos 6 和 centos 7 中安装使用 mysql 有比较大的不同,所以在安装之前需要清楚系统环境;首先使用 cat /etc/redhat-release 命令查看系统发布版本;使用 rpm -qa | grep maria 命令查看是否安装了 mariadb 软件(类似mysql的数据库软件,完全兼容mysql,在 centos 7 中默认已经安装),如果安装了需要进行卸载再进行安装 mysql,否则会出现安装冲突的错误。(下面实例以 centos 7 为例)
0-1、卸载 mariadb 软件:(没安装此软件跳过)
使用命令 yum remove mariadb-libs -y 卸载,完成后再进行查看是否存在,没有进行下一步;
1、首先需要查看系统中是否存在要安装的 mysql 的rpm包,使用如下命令:
yum list Mysql*(mysql*不行) ---> 没有返回说明没有安装,否则返回已安装的rpm安装包(存在的话直接跳到第3步)
2、如果没有就需要下载 mysql 的yum源安装包:
注:要找到对应系统版本的package(我服务器是centos7的,所以使用el7的mysql安装包)
点击 https://dev.mysql.com/downloads/repo/yum/ 进入 mysql 的官网,如下图所示:
然后使用 wget 执行如下命令进行yum源安装包的下载:
wget http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
3、安装 mysql 源
使用 yum localinstall mysql57-community-release-el7-11.noarch.rpm 命令进行安装
4、检查是否安装成功
再次使用 yum repolist enabled | grep "mysql.*-community.*" 命令查看,出现如下界面,安装成功:
注:可以使用 yum info mysql-community-server 查看 mysql 的详细信息
5、安装 mysql
使用 yum install mysql-community-server -y 命令安装 mysql;
6、检查 mysql 是否安装成功
可以使用"mysql -V"或“musql --version”命令查看当前的版本;和使用 "systemctl status mysqld" 查看mysql服务的状态;如下图所示:安装成功
注:当系统不是centos7版本时,上面查看状态命令可能不起作用,需要使用 "service mysqld status"命令,如下:(我在这里测试的是 6.9 版本)(开始服务、停止服务的命令同理)
7、登录 mysql 服务
当首次登录时有一个默认的登录密码,使用 grep ‘temporary password’ /var/log/mysqld.log 命令获取默认密码,(密码为输出结果的最后一串字符)
默认密码一般比较繁琐,且不安全,可以对密码进行修改,使用如下命令进行修改:
set password for 'root'@'localhost'=password('NewPassword'); 然后就可以使用 mysql -u root -p 进行登录 mysql 了。
注:测试系统centos6.9 ,mysql5.1 ;使用上面的命令查找不出默认初始密码,可以使用下面方法:
首先启动 mysql 服务,然后查看服务的进程信息,使用 ps -ef | grep -i mysql 命令,找到 mysqld_safe 所在目录(如下图所示),然后停止服务;执行 /usr/bin/mysqld_safe --skip-grant-tables >/dev/null 2>&1& 命令,接着执行 /usr/bin/mysql -u root mysql 命令,后会出现 "mysql>" ,进入了 mysql ,现在 使用 update user set password=Password('你的密码') where User='root'; 命令修改密码,然后执行 flush privileges; 命令,然后就OK了,使用 exit 退出账号,现在就可以使用 mysql -u root -p 命令输入之前设置的密码既可以使用了。具体实现如下图:(密码设置格式有具体要求,见下面第9点)
8、配置默认编码
修改 /etc/my.cnf 配置文件,在文件中的 [mysqld] 下添加如下编码设置:
character_set_server=utf8
init_connect='SET NAMES utf8'
9、查看密码策略
使用 show variables like '%password%' 命令,会输出如下密码要求信息:
可以修改策略,进入 /etc/my.cnf 文件,在其中添加 validate_password=off 语句,表示取消密码策略,重启服务再次查询时就不会有了;详细有关策略的设置见:https://dev.mysql.com/doc/refman/5.7/en/validate-password-options-variables.html#sysvar_validate_password_policy 。
四、基本软件安装完成,现在可以真正部署项目到服务器中了:
实现过程其实和在window系统上一样的设置,将编译好的项目直接放到 Tomcat 下的 webapp 文件夹下,然后到浏览器中访问就可以了,见下图实现:
到这一个java web项目就结束了。
注意:当部署项目到服务器中,在浏览器中能访问 Tomcat 首页但当访问项目时出现404错误时,可以在启动 Tomcat 时使用 ./catalina.sh run 命令(可以查看到具体的服务器启动日志信息),可以很方便的查找出错误。
备注:可能用到的基础命令(注:软件安装的路径问题,下面命令以我自己的软件安装路径为例)
sh /opt/apache-tomcat-9.0.2/bin/startup.sh ---> 启动 tomcat 服务
sh /opt/apache-tomcat-9.0.2/bin/shutdown.sh ---> 关闭 tomcat 服务
ps -ef | grep tomcat ---> 判断tomcat是否启动
sytemctl start mysqld 或 service mysqld start ---> 开启mysql服务
sytemctl stop mysqld 或 service mysqld stop ---> 关闭服务
sytemctlstatusmysqld 或 service mysqld status ---> 查看当前服务状态
<script>
(function(){
function setArticleH(btnReadmore,posi){
var winH = $(window).height();
var articleBox = $("div.article_content");
var artH = articleBox.height();
if(artH > winH*posi){
articleBox.css({
'height':winH*posi+'px',
'overflow':'hidden'
})
btnReadmore.click(function(){
articleBox.removeAttr("style");
$(this).parent().remove();
})
}else{
btnReadmore.parent().remove();
}
}
var btnReadmore = $("#btn-readmore");
if(btnReadmore.length>0){
if(currentUserName){
setArticleH(btnReadmore,3);
}else{
setArticleH(btnReadmore,1.2);
}
}
})()
</script>
</article>