【Linux】Linux项目部署及更改访问端口号和jdk、tomcat、MySQL环境搭建的配置安装

目录

一、作用

二、配置

1、上传安装包

2、jdk

2.1、解压对应安装包

2.2、环境变量搭建

3、tomcat

3.1、解压对应安装包

3.2、启动

3.3、设置防火墙

3.4、设置开发端口

4、MySQL

三、后端部署

四、Linux部署项目

1、单体项目

五、修改端口访问

1、进入目录

2、修改端口

3、启动


一、作用

工具的组合为开发者和系统管理员提供了构建和运行Java应用程序以及存储和管理数据的完整环境。

  1. JDK(Java Development Kit):JDK是Java开发工具包,它提供了开发和运行Java应用程序所需的工具和库。通过安装JDK,您可以在Linux上编译、调试和运行Java程序。

  2. Tomcat:Tomcat是一个开源的Java Web应用服务器,用于部署和托管Java Web应用程序。通过安装Tomcat,您可以在Linux服务器上轻松地部署和管理Java Web应用,使其能够响应HTTP请求,并提供动态内容。

  3. MySQL:MySQL是一个流行的开源关系型数据库管理系统。通过安装MySQL,您可以在Linux上创建、管理和操作数据库,存储结构化数据。MySQL提供了强大的功能和性能,可用于各种类型的应用程序,从简单的网站到复杂的企业级应用。

二、配置

1、上传安装包

打开我们的客户端工具上传我们需要的安装包文件,如果不使用客户端工具上传安装包则需要另一种命令进行上传,我这里使用的客户端工具上传。

2、jdk

2.1、解压对应安装包

进入我们放置安装包的文件夹,查看一下我们的文件,输入命令:tar -xvf jdk文件名 进行解压。

2.2、环境变量搭建

输入命令:vim /etc/profile 编辑配置环境变量。

JAVA_HOME:放置你的jdk解压路径。

#java environment
export JAVA_HOME=/javaxl/jdk1.8.0_151(jdk解压路径)
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

设置环境变量生效,配置完必须要生效。
命令:source /etc/profile

查看是否安装完成:java -version、Java、javac;

3、tomcat

3.1、解压对应安装包

解压tomcat

3.2、启动

首先找到我们解压好的tomcat,进入里面的bin目录里面,查看到我们Linux专门的启动文件startup.sh

启动

命令:./startup.sh

停止:./shutdown.sh

3.3、设置防火墙

启动之后我们还是访问不到的。我们要关闭Linux的防火墙。

开放端口
firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --zone=public --add-port=3306/tcp --permanent
刷新防火墙规则
firewall-cmd --reload
防火墙列表
firewall-cmd --zone=public --list-ports
防火墙状态
systemctl status firewalld
启动防火墙
systemctl start firewalld
关闭防火墙
systemctl stop firewalld.service
开机自启动
systemctl disable firewalld.service

我们可以查看一下防火墙的状态,它默认是开启的,在主机也访问不到。

关闭我们的防火墙,再查看我们的防火墙状态可以看到我们的防火墙已经关闭了。

我们的主机也能访问到

3.4、设置开发端口

  1. 首先开启再设置之前把我们的防火墙打开:systemctl start firewalld
  2. 随后设置我们需要的开发端口
    1. firewall-cmd --zone=public --add-port=8080/tcp --permanent
    2. firewall-cmd --zone=public --add-port=3306/tcp --permanent
  3. 刷新我们的防火墙规则:firewall-cmd --reload
  4. 查看我们的开发端口:firewall-cmd --zone=public --list-ports
  5. 然后就可以看到即使你的防火墙是打开的状态你也可以进行访问。

4、MySQL

1、查看Linux本身数据库mariadb;

命令:rpm -qa|grep mariadb


 

2、删除

命令:rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64

3、在线下载MySQL安装包(也可提前下载好上传)
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.35-1.el7.x86_64.rpm-bundle.tar

我这里使用下载好的上传
将MySQL安装包解压到指定目录
命令1:mkdir mysql-5.7
命令2:tar -xvf mysql-5.7.35-1.el7.x86_64.rpm-bundle.tar -C mysql-5.7

开始安装,-ivh 其中i表示安装,v表示显示安装过程,h表示显示进度

4、进入解压文件
命令:cd mysql-5.7

5、安装

命令1:rpm -ivh mysql-community-common-5.7.35-1.el7.x86_64.rpm
命令2:rpm -ivh mysql-community-libs-5.7.35-1.el7.x86_64.rpm
命令3:rpm -ivh mysql-community-client-5.7.35-1.el7.x86_64.rpm
命令4:rpm -ivh mysql-community-server-5.7.35-1.el7.x86_64.rpm

6、启动MySQL服务
命令:systemctl start mysqld

7、登录mysql修改密码
命令:grep "password" /var/log/mysqld.log

可以看到我们的临时密码

8、命令登录:mysql -uroot -p

输入刚刚看到的密码,我们就进去了。

9、设置密码校验策略(0 or LOW),不然密码过于简单不能通过。
命令:set global validate_password_policy=0;
10、设置密码校验长度,要不密码太短无法通过(密码最小长度为4位)
命令:set global validate_password_length=4;
11、修改密码
命令:set password = password("123456");

刷新服务FLUSH PRIVILEGES;

使用身份use mysql;

Centos7下无法远程连接mysql数据库
数据库没有授权,允许以root身份远程登录mysql
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

刷新:FLUSH PRIVILEGES;

退出:exit

最后我们再外部可以连接到这里的数据库了。

三、后端部署

  1. 利用客户端软件把我们打包好的war包项目进行拖拽复制放进我们的webapp里面。
  2. 新建数据库建立与我们项目相关的数据库。
  3. 停止tomcat:./shutdown.sh
  4. 启动tomcat:./startup.sh
  5. 访问我们的8080看启动没有
  6. 最后调用我们的后台数据。

四、Linux部署项目

1、单体项目

  1. 利用客户端软件把我们打包好的war包项目进行拖拽复制放进我们的webapp里面。
  2. 在MySQL的客户端工具里面连我们的Linux服务器数据库,运行我们准备好的sql文件
  3. 可以看到我们访问Linux部署的项目。

五、修改端口访问

1、进入目录

进入我们的apache-tomcat-8.5.20/conf/里面找到server.xml文件

2、修改端口

使用命令:vim server.xml 修改我们的访问端口号。

使用Insert键进行编辑esc退出编辑:wq退出保存

3、启动

  1. 进入apache-tomcat-8.5.20/bin/
  2. 如果你是启动tomcat的状态需要先关闭./shutdown.sh,在开启./startup.sh
  3. 如果你是没有开启的状态,直接开启即可./startup.sh

可以看到我们所有的访问路径都是你所修改的端口8082

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/112630.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Mysql数据库 6.SQL语言 分组、分页查询

分组查询—group by 分组——就是将数据表中的记录按照指定的类进行分组 关键字——group by 语法 语法中加[]的是可有可无的,group by一般和having一起使用 select 分组字段/聚合函数 from 表名 [where 条件] group by 分组列名 [having 条件] [order by …

基于深度学习的口罩佩戴检测

欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 文章目录 一项目简介二、功能三、基于深度学习的口罩佩戴检测四. 总结 一项目简介 基于深度学习的口罩佩戴检测是一种利用计算机视觉技术和深度学习算法进行口罩佩戴情况检测的…

【uniapp】html和css-20231031

我想用控件和样式来表达应该会更贴切,html和css的基础需要看看。 关于html:https://www.w3school.com.cn/html/html_layout.asp 关于css:https://www.w3school.com.cn/css/index.asp html让我们实现自己想要的布局(按钮&#xff0…

1深度学习李宏毅

目录 机器学习三件事:分类,预测和结构化生成 2、一般会有经常提到什么是标签label,label就是预测值,在机器学习领域的残差就是e和loss​编辑3、一些计算loss的方法:​编辑​编辑 4、可以设置不同的b和w从而控制loss的…

nodejs+vue+elementui+python家电销售分析系统设计与实现-计算机毕业设计

系统按照用户的实际需求开发而来,贴近生活。从管理员通过正确的账号的密码进入系统,可以使用相关的系统应用。管理员总体负责整体系统的运行维护,统筹协调。 我们可以利用计算机技术来取代传统的管理模式,实现家电销售分析系统的…

赋能制造业高质量发展,释放采购数字化新活力——企企通亮相武汉2023国际智能制造创新论坛

摘要 “为应对成本上升、供应端不稳定、供应链上下游协同困难、决策无数据依据等问题,利用数字化手段降本增效、降低潜在风险十分关键。在AI等先进技术发展、供应链协同效应和降本诉求等机遇的驱动下,采购供应链数字化、协同化成为企业激烈竞争的优先选…

坚持#第420天~阿里云轻量服务器内存受AliYunDunMonito影响占用解决方法

阿里云轻量服务器内存受AliYunDunMonito影响占用解决方法,亲测有效: Mobax好卡啊,那就直接在阿里云后台操作即可,阿里云后台也可以上传文件。 Navicat mysql好卡啊,那就直接在阿里云后台最上面帮助的右边有个数据库&…

c++装饰器模式

前言 装饰器模式,就是可以对一个对象无限装饰一些东西,而且可以没有顺序。比如一个人可能只会说出他的名字,但是可以让他再说哈哈,可以说完哈哈之后再说哇哇。如何后面又不想装饰了,不需要改类原来的代码,…

基础课15——语音标注

语音数据标注是对语音数据进行处理和分析的过程,目的是让人工智能系统能够理解和识别语音中的信息。这个过程包括了对语音信号的预处理、特征提取、标注等步骤。 在语音数据标注中,标注员需要对语音数据进行分类、切分、转写等操作,让人工智…

【数据库】形式化关系查询语言(一):关系代数Relational Algebra:基本运算、附加关系代数、扩展的关系代数

目录 一、关系代数Relational Algebra 1. 基本运算 a. 选择运算(Select Operation) b. 投影运算(Project Operation) 组合 c. 并运算(Union Operation) d. 集合差运算(Set Difference Op…

uniapp 使用 UDP

一、搭建UDP服务端,nodejs const dgram require("dgram");const message Buffer.from("你好,这是一个UDP广播消息"); const port 3000; // 用你想要的端口替换这里// 创建一个UDP套接字 const socket dgram.createSocket("…

目标检测理论知识

目标检测 1.基本概念 目标检测(Object Detection)的任务是找出图像中所有感兴趣的目标(物体),确定它们的类别和位置,是计算机视觉领域的核心问题之一。由于各类物体有不同的外观、形状和姿态,…

搜索二叉树

单纯的二叉树,并不能体现出优秀的存储和查找能力,但是对二叉树附加一些规则, 就能让二叉树成为很高效的存储和查找的一种数据结构,所以今天会介绍,基于二 叉树和一些附加规则的树——搜索二叉树1.搜索二叉树 搜索二叉…

WINCC7.5-根据时间跨度选择趋势

yyyy-MM-dd hh:mm:ss “yyyy”:表示四位数的年份,例如:2022。 “MM”:表示两位数的月份,从01到12。 “dd”:表示两位数的日期,从01到31。 “hh”:表示12小时制的小时数,从…

maven之父子工程版本控制案例实战,及拓展groupId和artifactId的含义

<parent>标签 用于父子工程项目&#xff0c;什么是父子工程&#xff1f; 顾名思义&#xff0c;maven父子项目是一个有一个父项目&#xff0c;父项目下面又有很多子项目的maven工程&#xff0c;当然&#xff0c;子项目下面还可以添加子项目&#xff0c;从而形成一个树形…

第4天:基础入门-30余种加密编码进制amp;Webamp;数据库amp;系统amp;代码amp;参数值

第4天&#xff1a;基础入门-30余种加密编码进制&Web&数据库&系统&代码&参数值 一、知识点 1. 存储密码加密-Web&数据库&系统2. 传输数据编码-各类组合传输参数值3. 代码特性加密-JS&PHP&NET&JAVA4. 数据显示编码-字符串数据显示编码二…

Android APT的使用

Apt 介绍 APT(Annotation Processing Tool)是一种处理注释的工具,它对源代码文件进行检测找出其中的 Annotation&#xff0c;根据注解自动生成代码。 Annotation 处理器在处理 Annotation 时可以根据源文件中的 Annotation 生成额外的源文件和其它的文件(文件具体内容由 Annot…

c++实现策略模式

前言 看了一会儿大话设计模式&#xff0c;我感觉平常的话&#xff0c;策略模式还挺常用的&#xff0c;记录一下。个人理解策略模式&#xff0c;就是抽象一个算法&#xff0c;然后你可以有很多不同的实现&#xff0c;这些实现去重写抽象算法的虚方法。然后在一个上下文类中有一…

win10pycharm和anaconda安装和环境配置教程

windows10 64位操作系统下系统运行环境安装配置说明 下载和安装Anaconda&#xff0c;链接https://www.anaconda.com/download 下载完后&#xff0c;双击exe文件 将anaconda自动弹出的窗口全部关掉即可&#xff0c;然后配置高级系统变量 根据自己的路径&#xff0c;配置…

C++ Qt QLineEdit如何响应回车事件

在Qt开发中,回车键的处理很常见,本篇博客介绍在QLineEdit里回车键的处理方法,例如下面的界面: QLineEdit回车键的处理有方式,一是链接returnPressed信号,二是用事件过滤。下面分别介绍这两种方式。 一、returnPressed信号 可以查看QLineEdit的头文件声明,有如下信号:…