Linux之JAVA环境配置jdkTomcatMySQL

news2024/11/16 5:53:03

目录

一. 安装jdk

        1.1 查询是否有jdk

        1.2 解压

        1.3 配置环境变量

二. 安装Tomcat(开机自启动)

        2.1 解压

        2.2 启动tomcat

        2.3 防火墙设置

        2.4 创建启动脚本(设置自启动,服务器开启即启动)

三. MySQL安装(开机自启动)

        3.1 卸载mariadb

        3.2 解压

        3.3 安装MySQL

        3.4 启动MySQL服务及开机启动设置

        3.5 登录MySQL修改密码

        3.6 防火墙设置

四. 部署项目


一. 安装jdk

        1.1 查询是否有jdk

1. 可以先使用命令查看是否有jdk

java -version

2. 像这样就是没有jdk环境

3. 进入到opt目录 

cd /opt/

4. 将压缩文件上传

4.1. 将所需要的文件进行上传,上传jdk安装包 jdk-8u151-linux-x64.tar.gz

4.2. 查询是否成功上传到/opt目录中

ll

        1.2 解压

1. 这里需要解压到usr/local目录下,在这里我新建一个文件夹保存解压后的文件

[root@localhost opt]# cd /usr/local/
[root@localhost local]# mkdir java

2. 然后再进入到opt目录下进行解压

[root@localhost local]# cd /opt/
[root@localhost opt]# tar -zxvf jdk-8u151-linux-x64.tar.gz -C /usr/local/java

如果记不得全就写一半按Tab键就会自动补全,但是一定要看清楚是不是这个压缩文件名称

3. 解压完成后,可以查看

[root@localhost opt]# cd /usr/local/java/
[root@localhost java]# ll

        1.3 配置环境变量

1. 进入/etc/profile文件中,配置环境变量

[root@localhost java]# vim /etc/profile

2. i键进入编辑模式,ESC退出编辑,:wq保存并退出 

在最后面加上:

#java environment
export JAVA_HOME=/usr/local/java/jdk1.8.0_151
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

注意:一定要按 i 进入到编辑模式中才能粘贴上面的配置命令到vim中(可编辑模式是有插入二字的),配置完后按 esc 即可退出编辑模式,最后输入 :wq 进行保存并回车

3. 设置环境变量生效 

[root@localhost java]# source /etc/profile

4. 测试是否成功

java -version

二. 安装Tomcat(开机自启动)

        2.1 解压

1. 上传安装包 apache-tomcat-8.5.20.tar.gz(在前面我们已经一次性上传完成了)

2. 在opt目录下进行解压,解压到usr/local/java目录下

[root@localhost java]# cd /opt/
[root@localhost opt]# tar -zxvf apache-tomcat-8.5.20.tar.gz -C /usr/local/java

3. 进入目录查看解压是否成功

[root@localhost opt]#cd /usr/local/java/
[root@localhost java]# ll

        2.2 启动tomcat

[root@localhost java]# cd apache-tomcat-8.5.20/bin/
[root@localhost bin]# ./startup.sh

        2.3 防火墙设置

1. 设置防火墙的命令

  • #开放端口
  • firewall-cmd --zone=public --add-port=3380/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

2. 开放tomcat 8080端口 

#开放端口
firewall-cmd --zone=public --add-port=3380/tcp --permanent
#刷新防火墙规则
firewall-cmd --reload
#防火墙列表
firewall-cmd --zone=public --list-ports

注意

#如果重启服务器
reboot 

我们再次启动tomcat就会发现打不开了,这时我们就需要创建启动脚本

(设置自启动,服务器开启即启动)

        2.4 创建启动脚本(设置自启动,服务器开启即启动)

1. 将tomcat目录下bin中的catalina.sh拷贝到/etc/init.d目录下

[root@localhost bin]# cp /usr/local/java/apache-tomcat-8.5.20/bin/catalina.sh /etc/init.d

 2. 重命名为tomcat 

#进入文件夹并查看
[root@localhost bin]# cd /etc/init.d/
[root@localhost init.d]ll
 
#重命名文件为tomcat
[root@localhost init.d]# mv catalina.sh tomcat
[root@localhost init.d]ll

3. 编辑tomcat

[root@localhost init.d]# vim tomcat

3.1 把java和tomcat环境变量,加在开头

JAVA_HOME=/usr/local/java/jdk1.8.0_151
CATALINA_HOME=/usr/local/java/apache-tomcat-8.5.20

3.2 加入以下注释,:wq保存 

#加入如下注释,注意是注释,#

#chkconfig: 23456 10 90
#description: tomcat service

其中 2345 表示这个4个运行级别会自动开机自启动,10是启动优先级,90是关闭优先级

3.3 执行以下命令添加服务

[root@localhost init.d]# chkconfig --add tomcat

三. MySQL安装(开机自启动)

        3.1 卸载mariadb

卸载mariadb,否则安装MySQL会出现冲突(先查看后删除再查看)

[root@localhost ~]# rpm -qa|grep mariadb
mariadb-libs-5.5.68-1.el7.x86_64
[root@localhost ~]# rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64
[root@localhost ~]# rpm -qa|grep mariadb

        3.2 解压

1. 在线下载MySQL安装包(也可提前下载好上传)

博主是提前下好了的,大家根据自己的习惯选择对应版本下载即可

跟jdk一样,将安装包拖入到opt目录下

2. 解压MySQL安装包 mysql-5.7.35-1.el7.x86_64.rpm-bundle.tar

2.1 创建一个文件夹

#进入解压目录
[root@localhost ~]# cd /usr/local/java/

#创建mysql文件夹
[root@localhost java]# mkdir mysql-5.7

2.2 进入opt目录下进行解压

[root@localhost java]# cd /opt
[root@localhost opt]# tar -xvf mysql-5.7.35-1.el7.x86_64.rpm-bundle.tar -C /usr/local/java/mysql-5.7/

        3.3 安装MySQL

注意:一个一个执行(注意写自己的版本号)

以下内容逐条进行安装,-ivh 其中i表示安装,v表示显示安装过程,h表示显示进度 

#进入目录
[root@localhost opt]# cd /usr/local/java/mysql-5.7/

rpm -ivh mysql-community-common-5.7.35-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.35-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.35-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.35-1.el7.x86_64.rpm

        3.4 启动MySQL服务及开机启动设置

[root@localhost mysql-5.7]# systemctl start mysqld
[root@localhost mysql-5.7]# systemctl enable mysqld.service

        3.5 登录MySQL修改密码

[root@localhost mysql-5.7]# grep "password" /var/log/mysqld.log
2024-02-24T09:47:07.400066Z 1 [Note] A temporary password is generated for root@localhost: ro.*hxccr9oL
[root@localhost mysql-5.7]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.

#设置密码校验策略(0 or LOW),要不密码太LOW不让你过
set global validate_password_policy=0;
#设置密码校验长度,要不密码太短不让你过(多次测试发现密码最小长度为4位)
set global validate_password_length=4;
#更新密码
set password = password("123456");

#数据库没有授权,允许以root身份远程登录mysql
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
#输入后使修改生效还需要下面的语句
FLUSH PRIVILEGES; 

#可以退出,试试用新密码重新登录
exit

        3.6 防火墙设置

#开放3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
#刷新防火墙规则
firewall-cmd --reload
#查看防火墙列表
firewall-cmd --zone=public --list-ports 

四. 部署项目

1. 先创建一个数据库,名称要与脚本一致

 2. 先将tomcat服务停掉,将项目的war包放入到/usr/local/java/apache-tomcat-8.5.20/webapps目录下,再启动服务

3. 项目启动成功

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

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

相关文章

【前端素材】推荐优质后台管理系统Sneat平台模板(附源码)

一、需求分析 后台管理系统是一种用于管理网站、应用程序或系统的工具,它通常作为一个独立的后台界面存在,供管理员或特定用户使用。下面详细分析后台管理系统的定义和功能: 1. 定义 后台管理系统是一个用于管理和控制网站、应用程序或系统…

Guitar Pro8.2吉他软件2024中文版功能特点介绍

Guitar Pro 8.2是一款功能强大的吉他乐谱软件,专为吉他手、音乐制作人和音乐爱好者设计。它提供了丰富的功能,帮助用户轻松创建、编辑、打印和分享吉他乐谱。以下是Guitar Pro 8.2的主要功能特点: Guitar Pro 2024 win-安装包下载如下&#x…

go interface{} 和string的转换问题

1.遇到的问题 问题来源于,我sql模版拼接遇到的问题。 首先,这样是没有问题的。 var qhx interface{} "qhx"s : qhx.(string)fmt.Println(s) 但是当我在这段代码里用:1.类型断言 var sqlStr "select * from tx_user where username %s" join…

leetcode——hot1

两数之和 class Solution {public int[] twoSum(int[] nums, int target) {int[] arrs new int[2];for(int i 0; i < nums.length - 1; i){for(int j i 1; j < nums.length; j){if(nums[i] nums[j] target){arrs[0] i;arrs[1] j;break;}}}return arrs;} }

sql注入 [极客大挑战 2019]FinalSQL1

打开题目 点击1到5号的结果 1号 2号 3号 4号 5号 这里直接令传入的id6 传入id1^1^1 逻辑符号|会被检测到&#xff0c;而&感觉成了注释符&#xff0c;&之后的内容都被替换掉了。 传入id1|1 直接盲注比较慢&#xff0c;还需要利用二分法来编写脚本 这里利用到大佬的脚…

C++——基础语法(3):内联函数、auto关键字、基于范围的for循环、空指针nullptr

6. 内联函数 在函数前加入inline修饰即可将函数变为内联函数。所谓内联函数&#xff0c;就是在编译时C编译器会将函数体在调用内联函数的地方展开&#xff0c;从而省去了调用函数的栈帧开销&#xff0c;提高程序运行效率。 inline int Add(int a, int b) {return a b; } int …

【电子书】设计制作

资料 wx&#xff1a;1945423050 整理了一些互联网电子书&#xff0c;推荐给大家 设计制作 3D打印建模&#xff1a;Autodesk 123D Design详解与实战 第2版.epub3ds Max 2016中文版标准教程.epubAfter Effects CS 6影视特效与栏目包装实战全攻略(第2版&#xff09;.epubAfter E…

欧瑞康真空TTR91莱宝ITR90真空计KA09420GA09使用说明接线图

欧瑞康真空TTR91莱宝ITR90真空计KA09420GA09使用说明接线图

RocketMQ快速实战以及集群架构原理详解

RocketMQ快速实战以及集群架构原理详解 组成部分 启动Rocket服务之前要先启动NameServer NameServer 提供轻量级Broker路由服务&#xff0c;主要是提供服务注册 Broker 实际处理消息存储、转发等服务的核心组件 Producer 消息生产者集群&#xff0c;通常为业务系统中的一个功…

操作系统访问控制机制

使用访问控制技术&#xff0c;可以设置用户对系统资源的访问权限&#xff0c;即限定用户只能访问允许访问的资源。访问控制还可以通过设置文件的属性&#xff0c;来保护文件只能被读而不能被修改&#xff0c;或只允许核准的用户对其进行修改等。 1.1 保护域 把一个进程能对某…

11-pytorch-使用自己的数据集测试

b站小土堆pytorch教程学习笔记 import torch import torchvision from PIL import Image from torch import nnimg_path ../imgs/dog.png imageImage.open(img_path) print(image) # imageimage.convert(RGB)transformtorchvision.transforms.Compose([torchvision.transforms.…

stm32利用CubeMX完成按键控制LED灯的点亮与熄灭

首先画电图&#xff0c;如下&#xff1a;&#xff08;会话最小系统后就可以不画了&#xff0c;如果要是画实物的话必须要有的&#xff0c;不能忘&#xff0c;模拟就无所谓了&#xff09; 然后是CubeMX设置时钟 这次使用的是内部8M时钟&#xff0c;这样能避免proteus闪退的情况&…

虚 拟 化原理

1 概念&#xff1a; ①通俗理解&#xff1a; 虚拟化是在硬件和操作系统之间的实践 ②通过对计算机的服务层级的理解&#xff0c;理解虚拟化概念 抽离层级之间的依赖关系&#xff08;服务器虚拟化&#xff09; 2 虚拟化分类 ①按架构分类 ◆寄居架构&#xff1a;装在操作系统上…

鸿蒙LiteOS-M 内核初始化

目录 一、LiteOS-M 初始化内核二、LOS_KernelInit代码分析三、LOS_Start代码解析坚持就有收获 一、LiteOS-M 初始化内核 在LiteOS-M应用程序中&#xff0c;系统初始化如下&#xff1a; /*** brief This is the ohos entry, and you could call this in your main funciton af…

Flutter(一):安装和环境配置、创建Flutter项目

安装和环境配置、创建Flutter项目 Flutter 下载方式1方式2 Flutter 环境配置配置国内镜像站点解压 Flutter将 flutter 添加到系统环境变量中运行 flutter doctor来验证安装 Android Studio下载插件创建项目安装 Android SDK 工具在模拟器上运行 Flutter 下载 方式1 全版本&…

C++基础知识(四:类的学习)

类 类指的就是对同一类对象&#xff0c;把所有的属性都封装起来&#xff0c;你也可以把类看成一个高级版的结构体。 【1】定义 class 类名 { 访问权限:成员属性; 访问权限:成员方法; }访问权限&#xff1a; public:共有的&#xff0c;类内、类外和子类中都可以访问 private:私有…

Matlab: Introduction to Hybrid Beamforming

文章目录 来源混合波束赋形的基本概念System Setup 来源 在matlab的命令行输入 doc hybrid beamforming 混合波束赋形的基本概念 混合波束形成简介 本例介绍了混合波束形成的基本概念&#xff0c;并说明了如何模拟这种系统。 现代无线通信系统使用空间复用来提高散射体丰富…

创建者模式(Builder Pattern):构造复杂对象的通用解决方案

文章目录 **一、技术背景与应用场景****为何使用创建者模式&#xff1f;****典型应用场景包括但不限于&#xff1a;** **二、创建者模式定义与结构****三、使用步骤举例**四、优缺点分析总结 一、技术背景与应用场景 创建者模式是一种对象创建型设计模式&#xff0c;它通过将复…

代码随想录算法训练营29期|day60 任务以及具体安排

第九章 动态规划part17 647. 回文子串 class Solution {public int countSubstrings(String s) {char[] chars s.toCharArray();int len chars.length;boolean[][] dp new boolean[len][len];int result 0;for (int i len - 1; i > 0; i--) {for (int j i; j < le…

高级语言期末2011级A卷

1.编写函数&#xff0c;判定正整数m和n&#xff08;均至少为2&#xff09;是否满足&#xff1a;数m为数n可分解的最小质因数&#xff08;数n可分解的最小质因数为整除n的最小质数&#xff09; 提示&#xff1a;判定m为质数且m是n的最小因数 #include <stdio.h> #include…