Linux之JAVA环境配置jdkTomcatMySQL

目录

一. 安装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 下载工具

        3.5 启动MySQL服务及开机自启动设置

        3.6 登录MySQL修改密码

        3.7 防火墙设置

        3.8 使用Navicat测试连接

四. 部署项目

        4.1 创建数据库

        4.2 停止tomcat的服务

        4.3 放war包

        4.4 启动项目


一. 安装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目录下,在这里我新建一个文件夹叫java来保存解压后的文件

[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

1. 进入到tomcat的bin目录中,输入命令./startup.sh 将tomcat进行启动

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

2. 启动成功 

        2.3 防火墙设置

1. 设置防火墙的命令

  • #开放端口
  • firewall-cmd --zone=public --add-port=8080/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=8080/tcp --permanent#刷新防火墙规则
firewall-cmd --reload#防火墙列表
firewall-cmd --zone=public --list-ports

80端口开放成功 

 

随后在浏览器中输入对应的地址+ :8080,如果看到下面的图片,证明tomcat成功启动 

注意

#如果重启服务器
输入: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

可以很明显的看到我们已经将catalina.sh 重命名为tomcat了

3. 编辑tomcat

[root@localhost init.d]# vim tomcat

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

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

3.2 加入以下注释后,esc 退出,:wq保存 

#加入如下注释,注意是注释,##chkconfig: 23456 10 90
#description: tomcat service

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

3.3 执行以下命令添加服务

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

        最后我们可以再次输入 reboot 命令,重启服务器进行一次验证,看看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/

2.3 解压完成后我们进行安装 

        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

本次操作的结果如下图所示: 

可以看到,在安装 server 服务端时出现了报错,根据提示信息,我们可以判断是因为我们的服务器缺少net-tools工具,才导致了本次的安装失败。

        3.4 下载工具

在命令行中输入以下命令:

yum install net-tools -y

本次操作的结果如下图所示:

如果还错误还出现一个perl:

那么我们需要输入这个命令:

yum install perl -y

工具安装完成之后,我们可以再次尝试安装serve 服务端,不出意外,这一次应该是可以了

rpm -ivh mysql-community-server-5.7.35-1.el7.x86_64.rpm

本次操作的结果如下图所示:

        3.5 启动MySQL服务及开机自启动设置

#启动MySQL服务
[root@localhost mysql-5.7]# systemctl start mysqld#开机自启动设置
[root@localhost mysql-5.7]# systemctl enable mysqld.service

        3.6 登录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: /c8Zp7I)frRW
[root@localhost mysql-5.7]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.

登录时有临时密码出现:/c8Zp7I)frRW,将它填入 Enter password: 处即可

注意:输入密码时不会显示密码的

 

登录成功 

  • #设置密码校验策略(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.7 防火墙设置

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

        3.8 使用Navicat测试连接

四. 部署项目

        4.1 创建数据库

先创建一个数据库,名称要与脚本一致,然后导入数据

        4.2 停止tomcat的服务

进入tomcat的bin目录,将tomcat服务暂停

cd /usr/local/java/apache-tomcat-8.5.20/bin/
./shutdown.sh

        4.3 放war包

1. 进入webapps目录

cd  ../webapps/
ll

2. 查找详细路径

pwd

/usr/local/java/apache-tomcat-8.5.20/webapps  

 

3. 将war包放入到webapps当中

        4.4 启动项目

1.进入到bin中进行tomcat的启动

cd  ../bin/
./startup.sh

 

 2. 浏览器访问对应地址启动项目(192.168.114.131:880/oapro)

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

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

相关文章

vscode使用restClient实现各种http请求

vscode使用restClient实现各种http请求 一,安装插件 首先,我们要在vscode的扩展中,搜索rest Client,然后安装它,这里我已经安装过了。 安装后,我们就可以使用rest client插件进行http各种操作了。 二&…

二分图匹配详解

二分图的原始模型及相关概念 二分图又称作二部图,是图论中的一种特殊模型。 设G(V,E)G(V,E)是一个无向图。 如顶点集V可分割为两个互不相交的子集(A, B),并且图中每条边(i,j)所关联的两个顶点 i 和 j 就都分属两个不…

定时任务处理-Spring Task

目录 1 前言 2 cron表达式 2.1 相关概念的介绍 2.2 举个例子(白雪警告) 2.3 使用网站自动生成 3 Spring Task的使用 3.1 导入依赖坐标 3.2 开启任务调度 3.3 自定义定时任务类 1 前言 当我们需要处理一些定时任务的时候就需要用到我们的Spring Task,接下来…

(done) 两个矩阵 “相似” 是什么意思?

参考视频:https://www.bilibili.com/video/BV1zu411673J/?spm_id_from333.337.search-card.all.click&vd_source7a1a0bc74158c6993c7355c5490fc600 参考资料:https://baike.baidu.com/item/%E7%9B%B8%E4%BC%BC%E7%9F%A9%E9%98%B5/10369874?frge_a…

小波变换模拟

小波变换是一种信号处理技术,通过在时间-频率域中使用基于小波的函数进行信号分析。小波变换在处理非平稳信号和图像时特别有用,可以将信号分解为不同频率的成分。它在数据压缩、去噪、特征提取等领域有广泛应用。 MATLAB中提供了用于二维离散小波变换的…

css4浮动+清除浮动

浮动 一.常见网页布局1.三种布局方式2.布局准则 二.浮动(float)1.好处2.概念3.三大特性4.使用5.常见网页布局模板6.注意点 三.清除浮动1.why2.本质3.语法4.四种way(后三个都是给父级添加)清除浮动总结 一.常见网页布局 1.三种布局…

Java8 Stream API 详解:流式编程进行数据处理

🏷️个人主页:牵着猫散步的鼠鼠 🏷️系列专栏:Java全栈-专栏 🏷️个人学习笔记,若有缺误,欢迎评论区指正 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默&…

切比雪夫(最小区域法)平面拟合算法

欢迎关注更多精彩 关注我,学习常用算法与数据结构,一题多解,降维打击。 本期话题:切比雪夫(最小区域法)平面拟合算法 相关背景和理论 点击前往 主要介绍了应用背景和如何转化成线性规划问题 平拟合输入和…

【C++精简版回顾】8.const

1.const数据成员 &#xff08;1&#xff09;const数据成员必须使用初始化参数列表 &#xff08;2&#xff09;不能修改 &#xff08;3&#xff09;不能修改必须初始化 class MM { public:MM() {}MM(int age, string name) :age(age), name(name) {}~MM() {cout << "…

SpringBoot和ApiFox整合快速上手

前置&#xff1a;IDEA版本IntelliJ IDEA 2023.2.4&#xff0c;Apifox 2.5.6 安装插件&#xff1a;Apifox Helper1.2.1 目录 1.文档生成 2.提取登录接口token 1.文档生成 把密钥配置到 导入成功:文档就会出现 2.提取登录接口token 之后我们再使用的时候&#xff0c;只需要配置…

2024.2.25 -ElasticSearch 进阶

倒排索引 Elasticsearch的倒排索引机制是通过将文档中出现的词汇与它们所在的文档ID关联起来&#xff0c;实现快速查找包含特定词汇的文档。下面是一个具体的例子来说明倒排索引的工作原理&#xff1a; 假设我们有一个简单的文章集合&#xff0c;包含以下三篇文章&#xff1a…

解锁苏宁电商数据新纪元:关键字搜索API接口引领业务升级

苏宁关键字搜索API接口&#xff1a;电商数据探索的新篇章 一、引言 在电商领域&#xff0c;数据的重要性不言而喻。为了帮助开发者更高效地获取和利用电商数据&#xff0c;苏宁开放平台提供了关键字搜索API接口。本文将带你深入了解这一接口的技术细节&#xff0c;让你在电商…

设计模式--单例模式--懒汉饿汉

单例模式 单例模式(Singleton)&#xff0c;保证一个类仅有一个实例&#xff0c;并提供一个访问它的全局访问点。 单例模式 通常我们可以让一个全局变量使得一个对象被访问&#xff0c;但它不能防止你实例化多个对象。一个最好的办法就是&#xff0c;让类自身负责保存它的唯一实…

selenium自动化测试如何定位一闪而过的元素,比如提示信息、提交按钮

这里以登录按钮为例 在当前页面按F12点击控制,在下方输入debugger&#xff0c;点击登录按钮后点击输入debugger的地方按回车&#xff0c;一闪而过的元素就会定住不动就可以定位了

企业网站建设需要多少钱?定制开发费用报价在3000-4000元

建立一个网站需要多少钱&#xff1f; 网站建设的价格划分也有很多。 这里首先要提的是市面上常见的一种低成本建站方式——模板网站&#xff0c;就是那种直接制作网站原型就可以无限复制的网站。 或者可以在几分钟内建立一个由软件生成的网站。 成本低得惊人&#xff0c;从500元…

【C++那些事儿】C++入门 | 命名空间 | 缺省参数 | 引用 | 内联函数 | auto关键字 | 范围for循环 | nullptr

&#x1f4f7; 江池俊&#xff1a; 个人主页 &#x1f525;个人专栏&#xff1a; ✅数据结构冒险记 ✅C那些事儿 &#x1f305; 有航道的人&#xff0c;再渺小也不会迷途。 文章目录 前言1. C关键字(C98)2. 命名空间2.1 命名空间定义2.2 命名空间使用 3. C输入&输出4. 缺…

PyPDF2:项目实战源码分享(PDF裁剪)

目录&#x1f4d1; 1. 背景&#x1f4d1;2. 源码模块解析&#x1f4d1;2.1 读取PDF页数2.2 获取指定页的宽高尺寸2.3 裁剪单页PDF2.4 批量裁剪PDF 总结&#x1f4d1; 1. 背景&#x1f4d1; 接PyPDF2模块推荐博文中提到的实际需求&#xff08;将银行网站下载来的多页且单页多张…

LeetCode 热题 100 | 二叉树(一)

目录 1 基础知识 1.1 先序遍历 1.2 中序遍历 1.3 后序遍历 2 94. 二叉树的中序遍历 3 104. 二叉树的最大深度 4 226. 翻转二叉树 5 101. 对称二叉树 菜鸟做题&#xff0c;语言是 C 1 基础知识 二叉树常见的遍历方式有&#xff1a; 先序遍历中序遍历后序遍历…

基于YOLOv5+PySide6的火灾火情火焰检测系统设计深度学习

wx供重浩&#xff1a;创享日记 对话框发送&#xff1a;225火灾 获取完整源码源文件已标注的数据集&#xff08;1553张&#xff09;配置跑起来说明 可有偿49yuan一对一远程操作&#xff0c;在你电脑跑起来 效果展示&#xff1a; ​数据集在下载的文件夹&#xff1a;yolov5-5.0\…

CRF算法(Conditional Random Fields)揭秘

CRF基本介绍 在机器学习中&#xff0c;建模线性序列结构的方法&#xff0c;除了HMM算法&#xff0c;另一个重要的模型就是CRF。HMM为了降低模型复杂性&#xff0c;对观测变量做了独立假设(即隐状态之间有相关性&#xff0c;而观测变量之间没有相关性)&#xff0c;这在某种程度…