Liunx部署java项目Tomcat、Redis、Mysql教程

news2024/11/26 1:39:01

常用命令

查看,停止服务

  1. 服务进程情况,这里拿redis服务举例,其他服务查询更改名字即可
    ps -ef|grep redis
  2. 端口号是否被占用
    lsof -i :6379
  3. 显示tcp的端口和进程等相关情况
    netstat -tnlp
  4. 强制停止服务
    kill -9 pidnum

防火墙

  1. 查看是否安装了firewalld
    sudo systemctl status firewalld 查看防火墙状态
    sudo systemctl is-active firewalld 查看防火墙是否是开启状态
  2. 安装firewalld
    sudo apt-get install firewalld
  3. 开启防火墙服务
    service firewalld start
  4. 重启防火墙服务
    service firewalld restart
  5. 关闭防火墙服务
    service firewalld stop
  6. 查询6379 port
    sudo firewall-cmd --query-port=6379/tcp
  7. 开放6379端口
    sudo firewall-cmd --add-port=6379/tcp --permanent
  8. 移除6379端口
    firewall-cmd --permanent --remove-port=6379/tcp
  9. 重启防火墙
    sudo firewall-cmd --reload
  10. 设置开机启动firewalld
    sudo systemctl enable firewalld
  11. reboot,查询全部已开放的端口
    sudo firewall-cmd --list-all

Tomcat

  1. 下载tomcat :https://tomcat.apache.org/

在这里插入图片描述

  1. 上传,并解压到目录
    tar -zxvf apache-tomcat-9.0.89.tar.gz  当前地址解压文件
    tar -zxvf apache-tomcat-9.0.89.tar.gz -C /home/abj/tomcat/  解压文件到指定文件夹
    tar 教程:Linux tar 命令|菜鸟教程
  2. 配置tomcat
    mv apache-tomcat-9.0.89/ apache-tomcat-9.0.89-web/  修改tomcat文件名,防止多项目混淆
    vim server.xml  编辑server.xml中端口 PS:vim 模式下i进入编辑,esc退出编辑 ⇒ \Rightarrow :输入wq!保存并退出
  3. 部署项目
    unzip dist.zip 解压前端zip项目.PS:mv /users/name/xx/a(换成b,c) /users/name/xx 提取子文件夹下的文件到父文件夹
    mv dist ROOT 修改前端文件夹名字为ROOT
    unzip web.war -d web/ 创建web项目文件夹,并解压到此文件夹中
    rm dist.zip  为了简洁可以删除多余文件

Redis

  1. 下载redis: https://download.redis.io/releases/
  2. 上传并解压redis
    tar -zxvf redis-3.2.9.tar.gz /home/redis  解压redis到指定目录
  3. 在redis目录下编译redis
    make 编译redis

❓ 安装时提示/usr/bin/ld: 找不到 -latomic
我采用直接安装。rpm下载地址1 OR CentOS7 RPM镜像包 搜索libatomic,下载并上传
运行rpm -ivh libatomic-14.0.1-0.15.fc41.aarch64.rpm
重新make编译
参考:redis安装编译缺少的库文件 /usr/bin/ld: 找不到 -latomic

  1. 安装redis
    make PREFIX=/home/redis/redis-3.2.9 install   安装redis
    PS: 这里多了一个关键字 PREFIX= 这个关键字的作用是编译的时候用于指定程序存放的路径。比如我们现在就是指定了redis必须存放在/usr/local/redis目录。假设不添加该关键字Linux会将可执行文件存放在/usr/local/bin目录,库文件会存在/usr/local/lib目录。配置文件会存放在/usr/local/etc目录。其他的 资源文件会存放在usr/local/share目录。这里指定号目录也方便后续的卸载,后续直接rm -rf /usr/local/redis 即可删除redis。
  2. 配置redis
    vim redis.conf 编辑配置文件
    修改一下两样就行
daemonize yes   #后台启动
logfile "/home/redis/redis-3.2.9/log/log.log"   #日志地址
  1. 启动redis
    daemonize属性为yes
    ./bin/redis-server ./redis.conf 后台启动
    daemonize属性为no
    ./bin/redis-server ./redis.conf 显示启动,只要回到Linux控制台则redis服务会自动关闭
    ./bin/redis-server& ./redis.conf 后台启动
  2. 查看启动状态
    ps -ef|grep redis 查询服务是否启动

Mysql

  1. 下载mysql(rpm);二进制安装可以参考CentOS7安装二进制MySQL8
    mysql下载地址
  2. 检查时候存在MariaDB
    rpm -qa|grep mariadb
  3. 卸载掉MariaDB避免冲突
    rpm -e --nodeps 上面查出来的名字
  4. 检查是否安装libaio与numactl
    检查libaio rpm -qa|grep libaio   在上面CentOS7 RPM镜像包查找并下载安装 rpm -ivh 下载的文件名
    检查numactl rpm -qa|grep numactl  在上面CentOS7 RPM镜像包查找并下载安装 rpm -ivh 下载的文件名
  5. 按顺序安装各个rpm
    rpm -ivh mysql-community-common-8.0.36-1.el7.x86_64.rpm
    rpm -ivh mysql-community-client-plugins-8.0.36-1.el7.x86_64.rpm
    rpm -ivh mysql-community-libs-8.0.36-1.el7.x86_64.rpm
    rpm -ivh mysql-community-client-8.0.36-1.el7.x86_64.rpm
    rpm -ivh mysql-community-icu-data-files-8.0.36-1.el7.x86_64.rpm
    rpm -ivh mysql-community-server-8.0.36-1.el7.x86_64.rpm
  6. 初始化mysql
    mysqld --initialize --console
  7. 系统授权
    chown -R mysql:mysql /var/lib/mysql/
  8. 启动mysql
    systemctl start mysqld 启动
    systemctl stop mysqld 停止
    systemctl restart mysqld 重启
    systemctl status mysqld 查看状态
  9. 查看mysql临时密码
    cat /var/log/mysqld.log|grep localhost  管道晒选快一点
  10. 登陆mysql
    mysql -uroot -p
  11. 修改密码
    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
  12. 授权远程登陆
    PS: mysql8.0之后的mysql不支持 授权的时候就进行用户创建,所以创建 之后才能授权;

CREATE USER 'root' IDENTIFIED BY '123456'; 创建用户(无论有无root用户都需要再创建一次,否则无法执行赋权语句)
GRANT ALL privileges ON *.* TO 'root'@'%' WITH GRANT OPTION; 赋予所有权限

use mysql; 使用mysql 数据库
update user set host='%' where user='root'; 特定用户的host 修改
grant all privileges on *.* to root@'%' 指定用户的授权

  1. 刷新权限
    flush privileges;
  2. 修改配置文件
    vim /etc/my.cnf

配置文件中有相关文件路径
配置文件中有相关文件路径

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

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

相关文章

Open WebUI升级到最新版本

背景介绍 open-webui是一个用于构建Web用户界面的开源库,它仿照 ChatGPT 的图形化界面,可以非常方便的调试、调用本地大语言模型。 目前该开源库更新较为活跃,从3个月前的版本(v0.1.108)到截止到2024年6月中旬发布的…

全网最详细Gradio教程系列——Gradio的安装与运行

全网最详细Gradio教程系列——Gradio的安装与运行 前言实战导论:2. Gradio的安装与运行2.1 安装2.1.1 Windows安装Gradio2.1.2 MacOS/Linux安装Gradio 2.2 运行2.2.1 普通方式运行2.2.2 热重载运行2.2.2.1 命令行式热重载2.2.2.2 Notebook热重载2.2.2.3 控制热重载 …

【LLM 论文】Self-Refine:使用 feedback 迭代修正 LLM 的 output

论文:Self-Refine: Iterative Refinement with Self-Feedback ⭐⭐⭐⭐ CMU, NeurIPS 2023, arXiv:2303.17651 Code: https://selfrefine.info/ 论文速读 本文提出了 Self-Refine 的 prompt 策略,可以在无需额外训练的情况下,在下游任务上产…

Python应用开发——30天学习Streamlit Python包进行APP的构建(11)

st.bokeh_chart 显示互动式虚化图。 Bokeh 是 Python 的一个图表库。此函数的参数与 Bokeh 的 show 函数的参数非常接近。有关 Bokeh 的更多信息,请访问 https://bokeh.pydata.org。 要在 Streamlit 中显示 Bokeh 图表,请在调用 Bokeh 的 show 时调用 st.bokeh_chart。 Fu…

Jmeter 进行http接口测试

🍅 视频学习:文末有免费的配套视频可观看 🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快 本文主要针对http接口进行测试,使用 jmeter工具实现。 Jmeter工具设计之初是用于做性…

Qt项目实战[MP3音乐播放器搜索引擎]

MP3音乐播放器搜索引擎(设计与实现) 一、MP3音乐播放器搜索引擎(开发环境) 1:操作系统: Windows10 x64专业版。 2:开发工具: Qt 5.12.8。 3:网易云音乐官方API接口: https://neteasecloudmusicapi.js.org/#/?id%e7%99%bb%e5%bd%95 二、MP3音乐播放器搜索引擎(功能模块) …

动手学深度学习(Pytorch版)代码实践 -计算机视觉-40目标检测和边界框

40目标检测和边界框 import torch from PIL import Image import matplotlib.pylab as plt from d2l import torch as d2lplt.figure(catdog) img Image.open(../limuPytorch/images/catdog.jpg) plt.imshow(img) plt.show()# 边界框 #save def box_corner_to_center(boxes):…

HSRP热备份路由协议(VRRP虚拟路由冗余协议)配置以及实现负载均衡

1、相关原理 在网络中,如果一台作为默认网关的三层交换机或者路由器损坏,所有使用该网关为下一跳的主机通信必然中断,即使配置多个默认网关,在不重启终端的情况下,也不能彻底换到新网关。Cisco提出了HSRP热备份路由协…

写一个坏越的小世界(六)

blog基本已经接近尾声了,稍微再润色下。比如天气模块 这边加一个天气小图标,应该会好点吧~ 当不同天气的时候可以显示不同的图标 介绍这边加了个滚球特效。虽然看着还不是很好看,先凑合着吧 整了个开关灯按钮,可以切换黑白主题 …

Educational Codeforces Round 112 (Rated for Div. 2) C. Coin Rows(构造 + 贪心 + 前缀和)

可以知道爱丽丝的路径是拐两次弯的折线 那么我们知道鲍勃能够选择的位置只有两段黄线中的一段 所以可以求出来第二行的后缀和,然后求出来第一行的前缀行,这样鲍勃在爱丽丝分割之后的情况下就会选择这两者中最大的一段,然而爱丽丝也会阻碍鲍…

RabbitMQ实践——搭建单人聊天服务

大纲 创建Core交换器用户登录发起聊天邀请接受邀请聊天实验过程总结代码工程 经过之前的若干节的学习,我们基本掌握了Rabbitmq各个组件和功能。本文我们将使用之前的知识搭建一个简单的单人聊天服务。 基本结构如下。为了避免Server有太多连线导致杂乱,下…

竞赛选题 python+大数据校园卡数据分析

0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 基于yolov5的深度学习车牌识别系统实现 🥇学长这里给一个题目综合评分(每项满分5分) 难度系数:4分工作量:4分创新点:3分 该项目较为新颖&am…

5款提高工作效率的免费工具推荐

SimpleTex SimpleTex是一款用于创建和编辑LaTeX公式的简单工具。它能够识别图片中的复杂公式并将其转换为可编辑的数据格式。该软件提供了一个直观的界面,用户可以在编辑LaTeX代码的同时实时预览公式的效果,无需额外的编译步骤。此外,SimpleT…

VS对齐代码格式

制表符Tab与空格有所区别,如果用到Tab键进行格式对齐,后续回车键自动对齐代码格式,在提交git时将明显看到Tab制表符,影响代码观感。例如,可能就长下面这个样子: 解决方式:CtrlF-->输入Tab转义…

Android学习

安卓期末考题复习 知识点总结 View 布局管理 线性布局 实现垂直或者水平布局。 orientation属性控制控件排列方向,包含两个属性值:vertical(垂直)、horizontal(水平);weight属性表示权重。 相对布局 根据控件之间的相对位置进行布局。…

css 布局出现无法去除的空白

案件介绍&#xff1a;在没有设置任何的css样式的情况下 文字顶部出现无法去除的空白 源代码 <div click"onClick" ><div class"tableTextButton--container"></div><Icon v-if"loading || thisLoading" type"ios-lo…

图数据库 vs 向量数据库

最近大模型出来之后&#xff0c;向量数据库重新翻红&#xff0c;业界和市场上有不少声音认为向量数据库会极大的影响图数据库&#xff0c;图数据库市场会萎缩甚至消失&#xff0c;今天就从技术原理角度来讨论下图数据库和向量数据库到底差别在哪里&#xff0c;适合什么场景&…

广和通 OpenCPU 二次开发(一) —— 串口

广和通 OpenCPU 二次开发&#xff08;一&#xff09; —— 串口 1.port&#xff0c;端口号2.引脚序列号对应芯片引脚图找&#xff0c;也可以对照GPIO功能复用表找3.要复用的pin脚对应的功能mode根据GPIO功能复用表选择 一、核心配置## 标题代码 int port 1; fibo_gpio_mode_s…

iML6602-无滤波器2×30W,60W音频放大器

iML6602是一款由集创北方推出的国产高性能、高效率的双声道D类音频功率放大器&#xff1b;它提供2X30W和60W的功率输出&#xff0c;支持无滤波器立体声&#xff0c;适用于蓝牙/无线扬声器、条形音响、LCD/LED电视和家庭影院等应用&#xff1b;可替代TI-TPA3128/3118/3110/3130/…