• JavaWeb项目的部署以及远程调试


    Linux环境下软件的安装

    Linux环境下的程序的安装、更新、卸载和查看。

    • rpm 命令:相当于windows程序的添加/卸载程序,进程程序的安装,查看,卸载。
      • 本地程序安装:rpm -ivh 程序名
      • 本地程序查看:rpm -qa
      • 本地程序卸载:rpm -e --nodeps 程序名
    • yum 命令:相当于可以联网的rpm命令,相当于联网下程序的安装和更新,自动执行rpm命令

    JDK的安装

    1. 查看当前Linux系统是否已经安装java,输入 rpm -qa | grep -i java

    2. 卸载两个openJDK,输入rpm -e --nodeps 要卸载的软件

    3. 上传jdk到linux的/usr/local/src/ 路径下

    4. 解压jdk,输入:tar -zxvf jdk-8u152-linux-x64.tar.gz

    5. 配置jdk环境变量

      打开/etc/profile配置文件,输入:vim /etc/profile,添加如下配置

    #set java environment
    JAVA_HOME=/usr/local/src/jdk1.8.0_152
    CLASSPATH=.:$JAVA_HOME/lib.tools.jar
    PATH=$JAVA_HOME/bin:$PATH
    export JAVA_HOME CLASSPATH PATH
    

    vim命令是vi的增强版,centos7最小安装,默认没有这个命令,安装vim

    • 输入rpm -qa 查看系统所有的安装软件
    • rpm -qa|grep vim 查看所有安装软件中名字有vim的
    • 在线安装vim yum install -y vim*

    6. 重新加载/etc/profile配置文件 source /etc/profile,是环境变量生效

    MySQL安装

    1. 查看CentOS自带的mysql

    • 输入 rpm -qa | grep -i mysql
    • 输入 rpm -qa | grep mariadb

    2. 将自带的mysql卸载

    • rpm -e --nodeps 软件名

    3. 上传Mysql到linux

    • 使用xftp软件将mysql的客户端和服务端都上传上去,传好后就可以进行本地安装了

    4. 安装perl依赖环境

    • yum install perl

    5. 在/usr/local/src/mysql下安装mysql

    • 安装服务器端:rpm -ivh MySQL-server-5.6.22-1.el6.i686.rpm
    • 安装客户端:rpm -ivh MySQL-client-5.6.22-1.el6.i686.rpm

    6. 启动mysql

    • service mysql start

    7. 登录mysql

    • mysql –uroot –p 默认密码为空

    8. 修改mysql密码

    • /usr/bin/mysqladmin -u用户名 -p 旧密码 -password 新密码
    • mysqladmin -uroot -password ab12 因为开始时root没有密码,所以-p旧密码一项就可以省略了。

    9. 开启mysql的远程登录

    • 默认情况下mysql为安全起见,不支持远程登录mysql,所以需要设置开启远程登录mysql的权限
    • 登录mysql后输入如下命令:
      • grant all privileges on *.* to 'root' @'%' identified by '123';
      • flush privileges;

    10. 开放Linux的对外访问的端口3306,将修改永久保存到防火墙中

    • 查看当前防火墙状态:systemctl status firewalld
    • 运行命令,可以看到zone名称:firewall-cmd --get-active-zones
    • 执行如下命令命令:firewall-cmd --zone=public --add-port=3306/tcp --permanent
    • 重启防火墙,运行命令:firewall-cmd --reload
    • 查看端口号是否开启,运行命令:firewall-cmd --query-port=3306/tcp
    • 除此之外,若需要关闭当前防火墙:systemctl stop firewalld,如需要开机防火墙不启动:systemctl disable firewalld

    Tomcat安装

      tomcat的安装比较简单,直接将tomcat.tar.gz压缩包上传到指定的路径下后,使用tar -zxvf 您的tomcat压缩包进行解压可以了,进入tomcat的bin下启动:./startup.sh,进入tomcat的bin下关闭:./shutdown.sh。

    JavaWeb项目的部署

    部署

      将您需要部署的项目,在IDEA中使用maven打包,在打包之前线clean一下,再进行package

    打包完成后,在target目录下会出现一下war包,将该war包上传到您的Linux服务器上的tomcat的webapp目录下,进入tomcat的bin下执行关闭后(/shutdown.sh),再重新启动tomcat(./startup.sh)。tomcat就会自动为我们解压了,我们就可以访问了。

    端口转发

      为了避免输入麻烦的端口号,我们如何不使用nginx,将80端口转发至8080端口,并让他永久生效呢。在centOS7之前,我么可以使用iptables来进行转发,但CentOs7之后就取消了。但我们可以通过安装iptables.service来进行设置,执行如下命令:

    systemctl stop firewalld  #关闭防火墙
    systemctl disable firewalld #禁止防火墙开机启动
    yum install iptables-service #安装
    iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080 #将80端口转发至8080端口
    service iptables save
    systemctl restart iptables.service
    systemctl enable iptables.service
    

    本地调试远程程序

    服务器端配置

    由于Linux系统中root启动的进程是不支持远程调试的,我们需要创建一个普通账号来启动程序,并且用该账号重新装一个tomcat,步骤如下:

    • adduser work
    • passwd work 设置密码为work,会让你确认密码和再次输入密码,要保持一致
    • 停掉当前root启动的tomcat
    • 切换账号 su work,进入到根目录 cd ~,上传一个tomcat到work账号的根目录并进行解压,修改配置文件的信息 vim bin/catalina.sh
      • 由于远程调试账号的tomcat的端口号不能小于1000,所有我们需要对tomcat的bin目录下的catalina.sh文件添加如下配置:
    CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,address=8888,server=y,suspend=n"
    
    • 重启tomcat,我是腾讯云服务器,需要在控制台的安全组策略打开8888端口

    IDEA配置

    使用IDEA调试远程程序,需要在Run/EditConfidurations中添加Remote,并设置你需要调试的项目,以及该项目所在的远程主机和端口,如下图:


    然后启动远程调试,如果控制台出现:Connected to the target VM, address: 'ip地址:8888', transport: 'socket',就说明链接成功,然后在你需要调试的接口打上断点,在浏览器中请求改接口,就会进入该断点,我们就可以看到调试信息了。

  • 相关阅读:
    linux系统中输入输出重定向 0<、<、1>、>、2>、1>>、>>、2>>、&>、>&、&>>、2>&1、<<
    linux系统统计某一行出现特定字符的次数
    linux系统中常用的通配符*、?、[ ]、[^xxx]、{}
    R语言strsplit函数用法
    linux系统统计某一字符出现的次数
    什么时候你需要一个虚构函数是虚的
    strcpy的返回值有什么用?
    boost.array 使用实例
    《DB 查询分析器》使用技巧之(七)
    《微型电脑应用》2011年第11期刊登出《万能数据库查询分析器中的事务管理在Oracle中的应用》
  • 原文地址:https://www.cnblogs.com/reminis/p/13413427.html
Copyright © 2020-2023  润新知