Linux搭建测试环境详细步骤

news2025/1/26 15:29:54

本文讲解如何在Linux CentOS下部署Java Web项目的步骤

环境准备

(1)Linux系统

(2)JDK

(3)Tomcat 

(4)MySQL

工具下载

一、Linux系统

本文主要是Linux CentOS7为例

自己在家练习小项目的同学可以通过虚拟机VMware Workstation自己安装Linux,也可以通过购买阿里云

二、JDK下载安装

可以通过官网下载或者上文的工具包,下载Linux版本的JDK,我这里以JDK1.8为例

下载到本地后,可以通过XFTP或者Xshell命令安装到Linux系统,下面以xshell命令演示:

建议将安装包存放到 /usr/local/ 目录下。[不要放在 /home 路径下,容易涉及到不同用户的访问权限]
我的存放到了 /usr/local/tools/ 下,安装工具都放到了这里。

(1)首先用命令进入到/usr/local目录下,执行命令mkdir tools,创建tools目录

 (2)将本地JDK安装包,注意是以.tar.gz结尾的,我安装的是jdk-8u221-linux-x64.tar.gz,执行命令rz,弹出文件夹窗口,选择本地的JDK安装包

 上传完成后,执行tar -xzvf jdk-8u221-linux-x64.tar.gz命令即可自动解压,解压完成后会有一个JDK1.8.0_221目录

(3)安装好JDK后需要配置环境变量

进入到/etc目录,执行命令vim profile,进入编辑模式

在文本末尾添加以下配置项

JAVA_HOME=/usr/local/tools/jdk1.8.0_221
CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/
PATH=$PATH:$JAVA_HOME/bin
export PATH JAVA_HOME CLASSPATH

注意JAVA_HOME的路径是你实际安装在Linux里面目录

编辑完后,按ESC退出编辑模式,输入:wq,保存退出

退出之后重启配置项,输入命令source /etc/profile

 这个时候可以查看JDK版本,输入java -version

 到此JDK安装结束

二、下载安装Tomcat

同样也可以在官网下载或者上文工具包里

首先进入到/usr/local/tools目录,创建新目录,输入命令mkdir tomcat,

进入到tomcat目录,cd /usr/local/tools/tomcat

上传tomcat安装包,同样输入命令rz,选择安装包,点击确定

然后解压安装包,输入tar -xzvf apache-tomcat-9.0.24.tar.gz,开始解压

解压完成后,需要重启tomcat,进入到解压后目录下的bin目录,命令cd /usr/local/tools/tomcat/apache-tomcat-9.0.24 /bin

然后输入命令./ startup.sh重启服务

 重启结束后,可以在本地浏览器输入http://ip:8080/,观察是否跳转到tomcat主页,如果有,则安装成功

例如

如果网页打不开或者无响应,可能是8080端口没有开放,这个时候需要开放端口,

输入命令 firewall-cmd --zone=public --add-port=8080/tcp --permanent

重启防火墙 firewall-cmd --reload

到此,输入命令firewall-cmd --zone=public --list-ports  查看端口是否开放,显示有8080便是成功

这样tomcat安装结束

三、MySQL安装

这里直接用yum命令安装

1、下载yum源:
wget 'https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm'

2、安装yum源
rpm -Uvh mysql57-community-release-el7-11.noarch.rpm

3、查看有哪些版本的mysql:
yum repolist all | grep mysql

4、安装

yum install -y mysql-community-server

 5、启动mysql,要知道在centos7中,没有了service命令,都是使用systemctl命令。注意启动的时候是start mysqld而不是mysql。

而在centos6中,使用service mysqld start
systemctl start mysqld
查看状态
systemctl status mysqld

如图所示,已经成功安装

6、登录数据库,修改数据库密码

mysql5.7的新特性之一就是在初始化的时候会生成一个自定义的密码,然后你需要找到这个密码,登录的时候输入。注意,输入密码的时候是不显示。
找到密码: 红框的地方就是密码
grep 'temporary password' /var/log/mysqld.log

登录数据库:这里-p之后不用输入密码,回车后再输入。改过密码之后登录则是直接在-p后加密码了。

mysql -uroot -p

输入日志打印的密码登录到MySQL

 修改密码

ALTER USER 'root'@'localhost' IDENTIFIED BY 'root123';
如果密码设置太简单出现以下的提示

 这里可以修改两个全局参数: 
首先,修改validate_password_policy参数的值

set global validate_password_policy=0;
再修改密码的长度
set 
global validate_password_length=1;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root123';

 测试修改后的密码,退出MySQL,输入命令root -u root -proot123,看能否登录

授权其他机器登陆

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

FLUSH PRIVILEGES;

至此,MySQL安装完毕

 可以在本地用Navicat连接数据库

 如果连接不上,查看3306端口是否开放,进入/etc/sysconfig,

安装iptables,输入命令yum install iptables-services

修改该目录下的iptables,在标注的那一行下面添加一样的语句,22改成3306

 查看状态防火墙开放的端口

service iptables status

c然后重启,输入service iptables restart,这样就可以连接数据库

四、安装项目包

将IDEA或者eclipse的项目打成war包,解压到tomcat目录下的webapp即可

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[拆轮子] PaddleDetection 中的 COCODataSet 是怎么写的

今日,辗转反侧,该💩的代码就是跑不成功,来看看 COCODataSet 到底是怎么写的,本文只参考当前版本的代码,当前版本 PaddleDetection2.5 COCODataSet 源码见附录 COCODataSet 类内部就三个函数: …

词义和词义消歧

Synsets(“synonym sets”, effectively senses) are the basic unit of organization in WordNet.同义词集 对于许多应用程序,我们希望消除歧义 • 我们可能只对一种含义感兴趣 • 在网络上搜索chemical plant 化工厂,我们不想搜到香蕉中的化学物质 所以…

【SpringBoot扩展点】 容器刷新前回调ApplicationContextInitializer

本文将作为Spring系列教程中源码版块的第一篇,整个源码系列将分为两部分进行介绍;单纯的源码解析,大概率是个吃力没人看的事情,因此我们将结合源码解析,一个是学习下别人的优秀设计,一个是站在源码的角度看…

【MySQL】索引和事务重点知识汇总

目录1.索引:1.1 索引的使用:1.2 索引背后的核心数据结构:1.2.1 先认识 B 树(N叉搜索树):1.2.2 再认识 B 树(N叉搜索树):2.事务:2.1 隔离性:2.1.1 脏读问题:2.1.2 不可重复读问题:2.1.3 幻读问题:2.1.4 总结:2.1.5 隔离级别:1.索引: 索引存在的意义就是为了提高查询到效率.索引…

【AI理论学习】Python机器学习中的特征选择

Python机器学习中的特征选择特征选择方法特征选择的Python库使用Scikit-learn实现特征选择方差卡方检验ANOVALasso正则化递归特征消除使用Feature-engine进行特征选择单变量特征选择相关性Python 中的更多特性选择方法参考资料任何数据科学项目的一个重要步骤是选择最具预测性的…

vue实现文件下载

引言 最近在自己做项目的需求的过程中,需要vuespringboot实现文件的下载功能(导出博客文件)。 问题重现 在我后端文件下载接口开发完成后,使用vue前端去进行对接时出现了问题。 我是直接使用的axios去进行请求接口&#xff0c…

Python 炫技操作:条件语句的七种写法

原代码 这是一段非常简单的通过年龄判断一个人是否成年的代码,由于代码行数过多,有些人就不太愿意这样写,因为这体现不出自己多年的 Python 功力。 if age > 18:return "已成年" else:return "未成年"下面我列举了六…

SwiftUI 中创建谷歌字体浏览器

Google Fonts是设计用户界面时使用的免费字体的转到站点。本教程将展示如何编写一个简单的工具来预览这些字体,而无需在系统中注册每种字体。 该应用程序包含一个拆分视图,该视图在左侧面板中包含字体列表。右侧面板将显示字体样式选项的预览。 项目设置 创建一个名为 Googl…

Vue2之webpack篇(一)

目录 前言 1、什么是webpack? 2、传统开发模式 一、传统开发模式 1、场景 2、问题 3、原因 4、解决方案 二、ES6模块化 1、ES6的解决方案 3、拓展 4、取别名 5、*搭配取别名 6、导出default{} 三、CommonJS规范 1、推荐文档 2、使用CommonJS规范解决方…

十二、DockerFile构建过程解析

1、概述 Dockerfile是用来构建Docker镜像的文本文件,是由一条条构建镜像所需的指令和参数构成的脚本。 在Docker 常用命令篇中,我们已经知道了2中构建镜像的方式 export\import 和 commit方式。这两种方式都需要先运行并创建容器,然后在容器…

python自学之《21天学通Python》(5)

第8章 复杂程序组织 当一个应用程序简单时,将程序代码写入一个文件即可。但随着应用程序或项目复杂度增加时,如果将所有代码都写入同一个文件中时,会出现文件过长或过大,即不方便代码浏览,也不方便代码的管理、使用与维…

人工智能人才缺口暴增,想转行的你赶紧把Python学起来...

当前AI人才极度紧缺,据《中国ICT人才生态白皮书》研究分析,到2018年底,我国人工智能人才缺口将突破100万,到2020年,这一数字将攀升到226万。 在过去的几年中,Python已经成为现代软件开发,基础设…

Web测试的各个测试点,居然这么全!(文末送web测试方法大全一份)

1 什么是Web测试? Web测试测试Web或Web应用程序的潜在错误。它是在上线前对基于网络的应用程序进行完整的测试。 UI测试功能测试数据库测试性能测试兼容性测试安全测试自动化测试 2 WEB测试主要测试场景 1.UI测试 界面是否美观,风格、字体、样式是否…

初识: 对象的属性特征

1. 前言 2. 什么是对象的属性特征 3. 灵活控制对象的属性特征 4. configurable: false 是单向设置的 1. 前言 众所周知,默认情况下我们可以任意对自己定义的对象进行增删改的。但是,在某些情况下,我们不能让别人去随便修改我们定义的对象的…

《数据结构》二叉数

学习目录树型结构概念树的重要概念树的表示形式二叉数概念特殊的二叉树二叉树的性质练习题树型结构 概念 树是一种非线性的数据结构,由 n 个有限节点组成一个有层次关系的集合 它具有以下的特点: 有一个特殊的结点,称为根结点,…

【 Threejs 】- Shader 着色器实例渲染教程

着色器在threejs中是一个难点,话不多说,先来看看着色器是什么? 如果您已经有使用计算机绘图的经验,您就会知道在这个过程中您先画一个圆,然后画一个矩形、一条线、一些三角形,直到您组成您想要的图像。这个…

面试真题 | 什么是 Redis ? Redis缓存应用场景有哪些?

面试官问题 redis击穿、穿透有什么区别?如何设计用例及测试 Redis 的基本概念 在没有添加 Redis 的时候,后端的查询流程是: 用户访问页面。请求后端服务。经过逻辑处理后,去数据库查询信息。 在添加 Redis 的之后,…

MySQL 服务端口大全

介绍 MySQL默认服务端口3306/TCP都不会陌生,但MySQL提供服务只有单纯的这个端口吗。在8.0版本默认启动的时候会发现,出现新的端口。 可以说MySQL使用的端口数量取决于所启用的特性、所使用的组件、应用程序连接的方式以及环境的其他方面。 按照官方说…

转速传感器信号隔离变送器正弦波输入方波信号输出

特点 转速传感器信号直接输入,方波信号输出正弦波、锯齿波信号输入,方波信号输出200mV峰值微弱信号的放大与整形不改变原波形频率,响应速度快电源、信号:输入/输出 3000VDC三隔离辅助电源:5V、12V、15V或24V直流单电源…

Huffman编码

目录背景Huffman编码代码部分背景 在数据传输,保存的时候,特别是在数据量特别大的时候传输,保存数据是一件特别麻烦的事。比如逛淘宝的时候,首页会有很多商家展示自己产品的高清图片,如果不对图片进行压缩服务端保存图…