Linux上安装jdk Tomcat mysql redis
1.安装JDk
1.1这里使用xshell中xfxp进行文件的上传,将jdk二进制包上传到Linux服务器上
下载地址:Java Downloads | Oracle
或者这里有下载好的安装包:链接:https://pan.baidu.com/s/1ZSJxBDzDaTwCH2IG-d2Gig 提取码:fstt
1.2上传成功后进行解压
使用命令: tar -zxvf jdk-8u361-linux-x64.tar.gz -C /usr/local 将上传的文件解压到 /usr/local目录下
解压完成后需要配置配置环境,进入到解压目录:cd /usr/local
使用ll可以查看当前目录下的文件,可以看到解压的目录
1.3使用vim命令修改/etc/profile文件:vim /etc/profile,然后按i进入插入模式
在末尾加入JAVA_HOME=/usr/local/jdk1.8.0_361 PATH=$JAVA_HOME/bin:$PATH
加入后按Esc退出编辑 再按:wq三个字符退出,则完成环境的配置。
退出需要重新加载profile文件,使配置生效: source /etc/profile
最后检查是否成功:java -version
看到版本信息则完成java的安装
jdk安装到此结束了。
2.安装tomcat
2.1首先去官网下载好安装包:Apache Tomcat® - Welcome!
我这里选择的是9.0版本
或者使用我下载好的链接:https://pan.baidu.com/s/1B0KTFHA5NPA4O-MdHuUh5Q 提取码:p6y0
2.2跟上面一样,上传到服务器上
然后解压到/usr/local下:tar -zxvf apache-tomcat-9.0.71.tar.gz -C /usr/local。
解压完成后跳转到该目录下进行查看。
接着进入到该目录的bin目录下,启动服务命令如下:
使用该命令查看是否成功启动:ps -ef | grep tomcat。
出现上面成功启动。
打开后想要外部访问到还需要对防火墙进行操作。
防火墙操作的命令:
查看防火墙状态:systemctl status firewalld 或者 firewall-cmd --state
暂时关闭防火墙:systemctl stop firewalld
永久关闭防火墙:systemctl disable firewalld
开启防火墙:systemctl start firewalld
开放8080指定端口:firewall-cmd --zone=public --add-port=8080/tcp --permanent
关闭8080指定端口:firewall-cmd --zone=public --remove-port=8080/tcp --permanent
立即生效:firewall-cmd --reload
查看开放的端口:firewall-cmd --zone=public --list-ports
我们关闭防火墙之后再访问Tomcat,出现Tomcat界面则成功。
有时候不想打开防火墙,开放8080端口即可。
对于阿里云服务器还需要在网络和安全组-安全组配置-配置规则里面加上8080端口。
想要停止Tomcat服务,在bin目录下执行:sh shutdown.sh 或者 ./shutdown.sh
结束Tomcat进程,先获得进程id,执行 ps -ef | grep tomcat ,然后kill -9 id
3.安装MySQL
使用RPM软件管理器,是Linux用于管理和安装软件的工具。
3.1检测是否安装mysql。
rpm -qa 查询系统安装所有软件 rpm -qa | grep mysql 查看系统安装的名称带有mysql软件
rpm -qa | grep mariadb查看系统安装的名称带有mariadb软件
CentOS7自带mariadb,与Mysql数据冲突,需要卸载
3.2卸载软件:rpm -e --nodeps 软件名称 此处执行 rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64
3.3安装mysql
大家可以自行去官网安装,或者使用我下好的安装包。
链接:https://pan.baidu.com/s/1wXYvEdEvyO3UyL0-y065mw 提取码:kk36
然后新建一个目录:mkdir /usr/local/mysql,并解压 tar -xvf mysql-8.0.26-1.el7.x86_64.rpm-bundle.tar -C /usr/local/mysql
在安装执行 rpm 安装包之前先下载 openssl-devel
插件,因为 mysql 里面有些 rpm 的安装依赖于该插件:yum install openssl-devel
安装完插件,依次执行下面命令。
rpm -ivh mysql-community-common-8.0.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.0.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-8.0.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-devel-8.0.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.0.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.0.26-1.el7.x86_64.rpm
最后一条可能报错 使用yum install libaio命令再运行。
3.4启动MySQL
查看mysql状态:systemctl status mysqld
启动mysql服务:systemctl start mysqld
开机自启mysql服务:systemctl enable mysqld 需要设置
查看已经启动的服务: netstat -tunlp | grep mysql
看到如上说明已经成功启动了
3.5登录mysql数据库
查看文件内容:cat /var/log/mysqld.log
查看文件内容包含password: cat /var/log/mysqld.log | grep password
知道了密码可以登录,使用:mysql -uroot -p
登录成功则执行以下命令修改密码
set global validate_password.policy = 0; //设置密码安全登记低,便于修改成root
set global validate_password.length = 4; //设置密码最低位数
ALTER USER 'root'@'localhost' IDENTIFIED BY 'mike.8080'; //修改密码
还需要创建一个用户用于远程访问:create user 'mike'@'%' IDENTIFIED WITH mysql_native_password BY 'mike8080';
最后给这用户分配所有权限:grant all on *.* to 'mike'@'%';
刷新:flush privileges;
此时账号root密码变成 mike.8080,可以远程连接的用户账号mike,密码mike8080
至此安装成功!!!
4.安装lrzsz
Yum是一个Shell前端软件包管理器,基于RPM包管理,能够从指定服务器自动下载RPM包并且安装,一次安装所有依赖,无需一次次下载安装
搜索lrzsz安装包:yum list lrzsz
安装:yum install lrzsz.x86_64
可以使用rp命令回车直接上传文件,无需xshell自带的上传功能。
5.安装Redis
首先去Redis官方网站下载:http://download.redis.io/releases/
或者使用我下载好的:https://pan.baidu.com/s/16YO8d_OLbDyJqYTMp2sLVg 提取码:gxpg
解压安装包:tar -zxvf redis-5.0.12.tar.gz -C /usr/local
安装Redis依赖环境gcc: yum install gcc-c++
进入redis文件夹进行编译:cd /usr/local/redis-5.0.12 再执行make命令
最后进入src目录下进行安装:make install
使用redis,先进入redis的src目录,然后启动: ./redis-server
想要后台一直运行,则退到上一层修改配置文件:vim redis.conf
输入/dae然后回车找到这里,修改成yes即可
然后执行命令生效,后面加入的是相对当前目录conf的路径
记得防火墙和服务器开端口号!!!
如果想给redis设置密码,重新进入刚刚的文件夹,然后打开注释,修改密码即可!
然后kill掉redis进程,重新启动即可
最后如果想使用redis,执行命令,还有输入密码:src/redis-cli -h localhost -p 6379 -a 123456
如果想要远程访问服务器的redis,需要在配置文件里面注释掉如下东西,允许其他主机访问,同样跟上面一样需要重启服务
至此,redis的安装结束!!!
相关文章:

Linux上安装jdk Tomcat mysql redis
1.安装JDk 1.1这里使用xshell中xfxp进行文件的上传,将jdk二进制包上传到Linux服务器上 下载地址:Java Downloads | Oracle 或者这里有下载好的安装包:链接:https://pan.baidu.com/s/1ZSJxBDzDaTwCH2IG-d2Gig 提取码:…...

Postman中加url环境变量和token全局变量
环境变量引用 语法:{{变量名}} 环境变量分类 1. 全局变量:全局有效,在Postman中的任何集合中都可以使用该变量,作用域最大。 2. 环境变量:要申明环境变量,先要创建环境,然后在该环境中创建变…...

多线程事务回滚方法
多线程事务回滚方法 介绍案例演示线程池配置异常类实体类控制层业务层mapper工具类验证 解决方案使用sqlSession控制手动提交事务SqlSessionTemplate注入容器中改造业务层验证成功操作示例业务层改造 介绍 1.最近有一个大数据量插入的操作入库的业务场景,需要先做一…...

java单元测试( Hamcrest 断言)
java单元测试( Hamcrest 断言) 单元测试特征: 1 范围狭窄 2 限于单一类或方法 3 体积小 为什么要编写单元测试? 为了防止错误(很明显!) 而且还可以提高开发人员的生产力,因为单元测试: (1) 帮助实施——在…...

讨论和总结 树模型 的三种序列化 方式的区别(模型存储大小、序列化所用内存、序列化速度)...
一、前言 本文总结常用树模型: rf,xgboost,catboost和lightgbm等模型的保存和加载(序列化和反序列化)的多种方式,并对多种方式从运行内存的使用和存储大小做对比 二、模型 2.1 安装环境 pip install xgboos…...

Halcon中的一些3D算子
一、记录一些Halcon里的关于3D的算子 1.read_object_model_3d 从文件读取一个3d模型 如下图,读的一个ply文件出来是个3d点云模型 2.visualize_object_model_3d 交互式展示3d模型 即上个算子读出来后,通过这个算子可以把3d模型显示出来旋转、平移&am…...

Android:Selector + Layer-lists 实现 AppCompatCheckBox
最近做项目涉及到一些UI相关的东东,虽然比较简单,但是也很有趣,写两篇简短的博客记录一下。 一."Selector 两张图片"实现 AppCompatCheckBox AppCompatCheckBox 是 androidx的一个widget:androidx.appcompat.widget.…...
TreeMap类型添加数据
package com.test.Test11;import java.util.*;public class Test02 {public static void main(String[] args) {/** 增加:put(K key,V value)* 删除:clear() remove(Object key)* 修改:* 查看:entrySet() get(Object key) keySet(…...

iOS 16 UI 设计系统免费在线使用方法
1、iOS 16 UI 设计系统中有什么? iOS 16 UI 设计系统通常包含以下组件和元素: 1. 按钮:包括操作按钮、图标按钮、导航按钮、滚动按钮、切换按钮、单选按钮、复选框按钮、呼叫按钮等各种类型的按钮。 2. 窗口和 UI 控件:包括标签…...

【接口测试】JMeter接口关联测试
1 前言 我们来学习接口管理测试,这就要使用到JMeter提供的JSON提取器和正则表达式提取器了,下面我们来看看是如何使用的吧。 2 JSON提取器 1、添加JSON提取器 在线程组右键 > 添加 > 后置处理器 > JSON提取器 2、JSON提取器参数说明 N…...

腾讯云服务器ping不通解决方法(公网IP/安全组/系统多维度)
腾讯云服务器ping不通什么原因?ping不通公网IP地址还是域名?新手站长从云服务器公网IP、安全组、Linux系统和Windows操作系统多方面来详细说明腾讯云服务器ping不通的解决方法: 目录 腾讯云服务器ping不通原因分析及解决方法 安全组ICMP协…...
【C++/嵌入式笔试面试八股】一、32.封装
封装 08.C++中struct和class的区别🍊 相同点 两者都拥有成员函数、公有和私有部分任何可以使用class完成的工作,同样可以使用struct完成不同点 两者中如果不对成员不指定公私有,struct默认是公有的,class则默认是私有的class默认是private继承, 而struct默认是public继…...
【算法】Transform to Chessboard 变为棋盘
文章目录 Transform to Chessboard 变为棋盘问题描述:分析代码 Transform to Chessboard 变为棋盘 问题描述: 一个 n x n 的二维网络 board 仅由 0 和 1 组成 。每次移动,你能任意交换两列或是两行的位置。 返回 将这个矩阵变为 棋盘 所需…...
vue通过封装$on定义全局事件
我们先在vue项目的src跟目录下创建一个文件夹 叫 utils 下面创建一个js文件夹 叫 bus.js 参考代码如下 import Vue from "vue"; export default new Vue();然后 我们就可以来用了 在需要定义事件的组件中编写 <template><div><h1>Hello world!&…...
资产管理规范
生产系统资产管理规范 1. 引言 生产系统的资产管理是确保生产系统正常运行和提高生产效率的关键因素之一。本文档旨在制定一套规范,以确保生产系统中的资产,包括服务器和软件等,得到有效管理和保护。 2. 资产分类 生产系统资产可根据其性质…...

已解决:如何从别人的仓库那里克隆到自己的仓库,并修改代码并提交。
一、场景 拉取项目代码后,如果要共同开发一个项目的自动化代码,此时需要把自己写的代码部分提交到代码仓库。 可以用pycharm把修改的代码push到代码仓库 二、操作方法 1.从别人的仓库那里点击fork,将仓库克隆到自己的仓库。 2.在pychar…...

剑指 Offer 18. 删除链表的节点
🚀 作者简介:一名在后端领域学习,并渴望能够学有所成的追梦人。 🚁 个人主页:不 良 🔥 系列专栏:🛸剑指 Offer 📕 学习格言:博观而约取,厚积而薄…...

WiFi 6 vs WiFi 5
在现代无线通信领域,WiFi已经成为人们日常生活中不可或缺的一部分。随着技术的不断发展,WiFi标准也在不断更新和演进。WiFi 6(802.11ax)和WiFi 5(802.11ac)是当前两个主要的WiFi标准。 本文将详细介绍WiFi …...
PHP语言基础
一.标记风格 标记风格分为四类(推荐XML) 1.XML风格 <?php echo这是xml风格‘; ?> 注意:结束标识符必须单独另起一行,并且不能有空格。在标识符前后有其他符号或者字符也会发生错误。 2.脚本风格 <script languagephp> …...

怎么用Excel VBA写一个excel批量合并的程序?
您可以按照以下VBA代码来实现把同一路径上的所有工作簿合并到同一个工作簿中: VBA Option Explicit Sub MergeWorkbooks() Dim path As String, fileName As String, sheet As Worksheet Dim targetWorkbook As Workbook, sourceWorkbook As Workbook Dim workshe…...

网络编程(Modbus进阶)
思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…...
【解密LSTM、GRU如何解决传统RNN梯度消失问题】
解密LSTM与GRU:如何让RNN变得更聪明? 在深度学习的世界里,循环神经网络(RNN)以其卓越的序列数据处理能力广泛应用于自然语言处理、时间序列预测等领域。然而,传统RNN存在的一个严重问题——梯度消失&#…...

Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具
文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...

2021-03-15 iview一些问题
1.iview 在使用tree组件时,发现没有set类的方法,只有get,那么要改变tree值,只能遍历treeData,递归修改treeData的checked,发现无法更改,原因在于check模式下,子元素的勾选状态跟父节…...
使用van-uploader 的UI组件,结合vue2如何实现图片上传组件的封装
以下是基于 vant-ui(适配 Vue2 版本 )实现截图中照片上传预览、删除功能,并封装成可复用组件的完整代码,包含样式和逻辑实现,可直接在 Vue2 项目中使用: 1. 封装的图片上传组件 ImageUploader.vue <te…...

短视频矩阵系统文案创作功能开发实践,定制化开发
在短视频行业迅猛发展的当下,企业和个人创作者为了扩大影响力、提升传播效果,纷纷采用短视频矩阵运营策略,同时管理多个平台、多个账号的内容发布。然而,频繁的文案创作需求让运营者疲于应对,如何高效产出高质量文案成…...

(一)单例模式
一、前言 单例模式属于六大创建型模式,即在软件设计过程中,主要关注创建对象的结果,并不关心创建对象的过程及细节。创建型设计模式将类对象的实例化过程进行抽象化接口设计,从而隐藏了类对象的实例是如何被创建的,封装了软件系统使用的具体对象类型。 六大创建型模式包括…...

windows系统MySQL安装文档
概览:本文讨论了MySQL的安装、使用过程中涉及的解压、配置、初始化、注册服务、启动、修改密码、登录、退出以及卸载等相关内容,为学习者提供全面的操作指导。关键要点包括: 解压 :下载完成后解压压缩包,得到MySQL 8.…...

GraphQL 实战篇:Apollo Client 配置与缓存
GraphQL 实战篇:Apollo Client 配置与缓存 上一篇:GraphQL 入门篇:基础查询语法 依旧和上一篇的笔记一样,主实操,没啥过多的细节讲解,代码具体在: https://github.com/GoldenaArcher/graphql…...
Windows 下端口占用排查与释放全攻略
Windows 下端口占用排查与释放全攻略 在开发和运维过程中,经常会遇到端口被占用的问题(如 8080、3306 等常用端口)。本文将详细介绍如何通过命令行和图形化界面快速定位并释放被占用的端口,帮助你高效解决此类问题。 一、准…...