Ctenos7安装mysql-8.1.0/tomcat-9.0.80/LNMT部署
目录
一、实验拓扑
二、部署mysql
三、部署Tomcat
四、配置NGINX
五、 配置NGINX的双机热备提高可用性
一、实验拓扑

二、部署mysql
官网下载地址https://dev.mysql.com/downloads/mysql/
1、移除mariadb,安装所需应用
mysql-8.1.0 社区版 安装说明官网下载地址https://dev.mysql.com/downloads/mysql/1、yum remove mariadb
2、yum -y install liaio net-tools
3、解压安装包,进入安装包执行以下命令
yum install -y perl-Module-Install.noarch
yum install perl-Test-*.noarch -y
rpm -ivh mysql-community-common-8.1.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.1.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.1.0-1.el7.x86_64.rpm
yum install -y perl-Module-Install.noarch
rpm -ivh mysql-community-common-8.1.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.1.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.1.0-1.el7.x86_64.rpm
yum install perl-Test-*.noarch -y
rpm -ivh mysql-community-libs-8.1.0-1.el7.x86_64.rpm
yum remove mariadb-libs.x86_64 -y
rpm -ivh mysql-community-libs-8.1.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-8.1.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.1.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-debuginfo-8.1.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-embedded-compat-8.1.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-icu-data-files-8.1.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.1.0-1.el7.x86_64.rpm rpm -ivh mysql-community-server-debug-8.1.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-devel-8.1.0-1.el7.x86_64.rpm
yum install -y openssl
rpm -ivh mysql-community-devel-8.1.0-1.el7.x86_64.rpm
yum install -y openssl*
rpm -ivh mysql-community-devel-8.1.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-test-8.1.0-1.el7.x86_64.rpm
yum install -y perl*
rpm -ivh mysql-community-test-8.1.0-1.el7.x86_64.rpm
4、启动MYSQL
systemctl start mysqld
5、查看临时密码
cat /var/log/mysqld.log | grep password
6、登录MYSQL
mysql -u root -p
7、修改密码
alter user 'root'@'localhost' identified by '123456.Com';
flush privileges
创建库jx
create database jx;
8、远程登录用户创建
create user 'hy'@'%' identified by '123456.Com';
grant all privileges on 库名.表明 to 'hy'@'%' with grant options;
flush privileges;
9、命令行操作mysql
mysql -u root -p -e " show databases;"
2、同理在192.168.115.136上安装mysql并验证远程登录账户
mysql -u hy -p'123456.Com' -h 192.168.115.131 -P 3306 -e "show databases;"

三、部署Tomcat
在192.168.115.136/192.168.115.140部署tomcat
java环境Java SE | Oracle Technology Network | Oracle
Tomcat Apache Tomcat® - Welcome!
Java环境部署
1、which Java 查看Java的路径Java -version 查看Java版本如果版本达不到我们的安装要求就使用rm -rf 配合which java 删除现有版本2、直接使用rpm -ivh jdk-20_linux-x64_bin.rpm 安装即可安装完成后查看which JavaJava -versionTomcat部署
Tomcat下载地址 https://tomcat.apache.org/
1、解压tar -xf apache-tomcat-9.0.80.tar.gzmv apache-tomcat-9.0.80 /usr/local/tomcat
2、建立软联建启动命令 ln -s /usr/local/tomcat/bin/startup.sh /usr/bin/catup停止命令 ln -s /usr/local/tomcat/bin/shutdown.sh /usr/bin/catdown
启动 catup
访问测试,ok

四、配置NGINX
192.168.115.141/192.168.115.142安装NGINX配置动静分离,负载均衡
1、安装
yum -y install epel-release.noarch
yum -y install nginx
2、配置
vim /etc/nginx/nginx.conf
##在http字段插入
upstream tomcat {server 192.168.115.136:8080;server 192.168.115.140:8080;}
##在server字段插入
location ~ \.jsp$ { ####这里是jspproxy_pass http://tomcat;proxy_set_header Host $host;}location / {root /usr/share/nginx/html;index index.html;}
###保存退出重启服务
3、测试
分别访问192.168.115.141/192.168.115.142
静态页面

动态页面


五、 配置NGINX的双机热备提高可用性
yum -y install keepalived
vim /etc/keepalived/keepalived.conf
#######################配置####################################
############################################################
! Configuration File for keepalivedglobal_defs {notification_email {acassen@firewall.locfailover@firewall.locsysadmin@firewall.loc}notification_email_from Alexandre.Cassen@firewall.locsmtp_server 192.168.200.1smtp_connect_timeout 30router_id LVS_DEVEL ###从的编号要改动一下 LVS_DEVEL1vrrp_skip_check_adv_addr#vrrp_strictvrrp_garp_interval 0vrrp_gna_interval 0
}vrrp_instance VI_1 {state MASTER ###从改为BACKUPinterface ens33 ###网卡名virtual_router_id 51priority 100 ###从的优先级要比主低advert_int 1authentication {auth_type PASSauth_pass 1111}virtual_ipaddress {192.168.115.200 ###VIP用来访问的虚拟IP}
}
virtual_server 192.168.115.200 8080 { ###vip对应的真是IP 在下面delay_loop 6lb_algo rr persistence_timeout 50protocol TCPreal_server 192.168.115.136 8080 { ###这是Tomcat服务器的IPweight 1HTTP_GET {url { path /testurl/test.jsp}
url { path /testurl2/test.jsp}url { path /testurl3/test.jsp}connect_timeout 3nb_get_retry 3delay_before_retry 3}}real_server 192.168.115.140 8080 { ###这是Tomcat服务器的IPweight 1HTTP_GET {url { path /testurl/test.jsp}url { path /testurl2/test.jsp
}connect_timeout 3nb_get_retry 3delay_before_retry 3}}
}
启动keepalived
systemctl start keepalived.service
看看主调器的IP
现在模拟主机宕机用备调度器访问VIP192.168.115.200
先查看备的IP,keepalived生效
静态页面
动态页面

依旧正常访问,经过简单的测试后我们可以在Tomcat上部署应用了
相关文章:
Ctenos7安装mysql-8.1.0/tomcat-9.0.80/LNMT部署
目录 一、实验拓扑 二、部署mysql 三、部署Tomcat 四、配置NGINX 五、 配置NGINX的双机热备提高可用性 一、实验拓扑 二、部署mysql 官网下载地址https://dev.mysql.com/downloads/mysql/ 1、移除mariadb,安装所需应用 mysql-8.1.0 社区版 安装说明官网下载地址…...
input时间表单默认样式修改(input[type=“date“])
一、时间选择的种类: HTML代码: <input type"date" value"2018-11-15" />选择日期: 选择时间: <input type"time" value"22:52" />在这里插入图片描述 选择星期: <…...
首页搜索框传递参数,并在搜索页面中的搜索框中进行显示,搜索框绑定回车键进行搜索
实现搜索条件和搜索内容固定,以及回车键搜索跳转 1.写出搜索条件和搜索框 <form class"parent"><select id"searchSelect" style"border: 1px solid #325da7;border-right: none;" value"resource"><opt…...
【Vue3+Ts】项目启动准备和配置项目代码规范和css样式的重置
项目启动准备 创建项目( 使用Vite 构建工具创建项目模板)目录介绍插件安装创建别名编译说明项目配置配置icon和标题配置项目别名配置ts.config.json检测vscode的插件是否配置 配置项目代码规范集成editorconfig配置prettier工具库ESLint检测配置 CSS样式…...
Java【手撕双指针】LeetCode 15. “三数之和“, 图文详解思路分析 + 代码
文章目录 前言一、三数之和1, 题目2, 思路分析3, 代码 前言 各位读者好, 我是小陈, 这是我的个人主页, 希望我的专栏能够帮助到你: 📕 JavaSE基础: 基础语法, 类和对象, 封装继承多态, 接口, 综合小练习图书管理系统等 📗 Java数据结构: 顺序表, 链表, 堆…...
Flutter:自定义组件的上下左右弹出层
背景 最近要使用Flutter实现一个下拉菜单,需求就是,在当前组件下点击,其下方弹出一个菜单选项,如下图所示: 实现起来,貌似没什么障碍,在Flutter中本身就提供了弹出层PopupMenuButton组件和show…...
C++处理终端程序中断或意外退出的情况
目录 背景和需求解决方法关于信号类型 背景和需求 Linux环境中,有一个可执行程序,假设该程序的运行生命周期需要调用下面四个函数: int connect(); int start();int end(); int disconnect();如果用户在程序运行期间,手动CTRLC或…...
分布式锁:业务锁和定时任务锁
一:业务锁 在代码业务逻辑加锁,防止不同业务操作相同业务表导致数据错乱,设置锁进行等待。这里锁使用的是ReentrantLock。详细的介绍可以参考: https://blog.csdn.net/jerry11112/article/details/112375167 Slf4j public class…...
路由器的简单概述(详细理解+实例精讲)
系列文章目录 华为数通学习(4) 目录 系列文章目录 华为数通学习(4) 前言 一,网段间通信 二,路由器的基本特点 三,路由信息介绍 四,路由表 五,路由表的来源有哪些…...
Mapper.xml文件解析
Mapper.xml文件解析 简单解读 最近在做一个分布式项目,看到xml文件原先只是上网CV,还是要搞清楚吧! 下面是一个Mybatis的SQL映射文件的配置 <?xml version"1.0" encoding"UTF-8"?> <!DOCTYPE mapper PUBLIC…...
ES 7.6 - JAVA应用基础操作篇
ES 7.6 - JAVA应用基础操作篇 环境准备依赖配置 实体类准备使用说明索引/映射操作创建索引和映射索引和映射相关查询删除索引 文档操作插入数据更新数据删除数据批量操作 文档查询根据ID查询根据字段精准查询根据字段分词查询控制返回字段范围查询组合查询排序分页高亮搜索聚合…...
com.squareup.okhttp3:okhttp 组件安全漏洞及健康度分析
组件简介 维护者square组织许可证类型Apache License 2.0首次发布2016 年 1 月 2 日最新发布时间2023 年 4 月 23 日GitHub Star44403GitHub Fork9197依赖包5,582依赖存储库77,217 com.squareup.okhttp3:okhttp 一个开源的 HTTP 客户端库,可以用于 Android 和 Jav…...
【Unity的HDRP渲染管线下用Steam VR串流结合使用遇到的各种问题_SteamVR 插件和Pico串流助手】
用Steam串流VR 背景:1.项目准备:相关文档和社区资源需要下载的工具2.梳理工程渲染设置和场景烘培正确:几个概念的一些说明:1. SteamVR:2. SteamVR插件:3. OpenVR和OpenXR:4. XRI:5. Pico串流助手:6. "Mock Runtime"选项含义SteamVR插件导入配置好SteamVR Came…...
Unity——音乐、音效
在游戏运行的过程中,音效的播放时机与游戏当前内容密切相关,而且随着场景的变化、剧情的推进,背景音乐也需要适时切换,所以恰当地控制音乐和音效的播放非常重要。音乐和音效的播放、停止、切换和音量变化等,都需要由脚…...
Ubuntu 23.10 将首次推出基于 Flutter 的新 Ubuntu 商店
导读Ubuntu 正在升级其软件商店以提供顺滑的体验! 随着不断发展,Canonical 似乎全力以赴,将基于 Flutter 的元素整合到 Ubuntu 中。 在前段时间 Ubuntu 23.04 发布后,我们见到了基于 Flutter 的安装程序 ,现在&#x…...
linux scatterlist阅读三
sg_copy_buffer 函数定义: /*** sg_copy_buffer - Copy data between a linear buffer and an SG list* sgl: The SG list* nents: Number of SG entries* buf: Where to copy from* buflen: The number of bytes to copy* skip: Number of bytes to sk…...
2023新,centos7安装mysql8.0.25
2023新,centos7安装mysql8.0.25 目录 2023新,centos7安装mysql8.0.251、下载rpm文件2、安装3、配置my.cnf4、启动查看重启服务5、登入mysql并修改密码6、修改可以远程登录 1、下载rpm文件 进入到你想要的文件地址下 wget https://repo.mysql.com//mysq…...
Data Rescue Professional for Mac:专业的数据恢复工具
在数字化时代,我们的生活和工作离不开电脑和存储设备。但是,意外情况时常发生,例如误删除文件、格式化硬盘、病毒攻击等,这些都可能导致重要的数据丢失。面对数据丢失,我们迫切需要一款可靠的数据恢复工具。今天&#…...
新手小白想要做好跨境电商独立站,需要考虑哪些要素?
对于不少中小卖家而言,利用独立站出海已然成为下一个跨境热潮。但是采用独立站模式做出海生意前,卖家需要考虑哪些要素? 产品选择 对于国内的卖家来说,依托于国内强大的供应链优势,只要能把握住消费者心态࿰…...
Consul原理介绍
官方文档:https://www.consul.io/docs Raft动画演示:http://thesecretlivesofdata.com/raft/ 注册中心对比 Consul特点 服务发现、健康检查、Key/Value存储、安全服务通信(TLS证书)、多数据中心 架构 角色 数据中心 数据中心内…...
如何在看板中体现优先级变化
在看板中有效体现优先级变化的关键措施包括:采用颜色或标签标识优先级、设置任务排序规则、使用独立的优先级列或泳道、结合自动化规则同步优先级变化、建立定期的优先级审查流程。其中,设置任务排序规则尤其重要,因为它让看板视觉上直观地体…...
解锁数据库简洁之道:FastAPI与SQLModel实战指南
在构建现代Web应用程序时,与数据库的交互无疑是核心环节。虽然传统的数据库操作方式(如直接编写SQL语句与psycopg2交互)赋予了我们精细的控制权,但在面对日益复杂的业务逻辑和快速迭代的需求时,这种方式的开发效率和可…...
NFT模式:数字资产确权与链游经济系统构建
NFT模式:数字资产确权与链游经济系统构建 ——从技术架构到可持续生态的范式革命 一、确权技术革新:构建可信数字资产基石 1. 区块链底层架构的进化 跨链互操作协议:基于LayerZero协议实现以太坊、Solana等公链资产互通,通过零知…...
C++使用 new 来创建动态数组
问题: 不能使用变量定义数组大小 原因: 这是因为数组在内存中是连续存储的,编译器需要在编译阶段就确定数组的大小,以便正确地分配内存空间。如果允许使用变量来定义数组的大小,那么编译器就无法在编译时确定数组的大…...
Selenium常用函数介绍
目录 一,元素定位 1.1 cssSeector 1.2 xpath 二,操作测试对象 三,窗口 3.1 案例 3.2 窗口切换 3.3 窗口大小 3.4 屏幕截图 3.5 关闭窗口 四,弹窗 五,等待 六,导航 七,文件上传 …...
(一)单例模式
一、前言 单例模式属于六大创建型模式,即在软件设计过程中,主要关注创建对象的结果,并不关心创建对象的过程及细节。创建型设计模式将类对象的实例化过程进行抽象化接口设计,从而隐藏了类对象的实例是如何被创建的,封装了软件系统使用的具体对象类型。 六大创建型模式包括…...
MinIO Docker 部署:仅开放一个端口
MinIO Docker 部署:仅开放一个端口 在实际的服务器部署中,出于安全和管理的考虑,我们可能只能开放一个端口。MinIO 是一个高性能的对象存储服务,支持 Docker 部署,但默认情况下它需要两个端口:一个是 API 端口(用于存储和访问数据),另一个是控制台端口(用于管理界面…...
Qt 事件处理中 return 的深入解析
Qt 事件处理中 return 的深入解析 在 Qt 事件处理中,return 语句的使用是另一个关键概念,它与 event->accept()/event->ignore() 密切相关但作用不同。让我们详细分析一下它们之间的关系和工作原理。 核心区别:不同层级的事件处理 方…...
【Linux手册】探秘系统世界:从用户交互到硬件底层的全链路工作之旅
目录 前言 操作系统与驱动程序 是什么,为什么 怎么做 system call 用户操作接口 总结 前言 日常生活中,我们在使用电子设备时,我们所输入执行的每一条指令最终大多都会作用到硬件上,比如下载一款软件最终会下载到硬盘上&am…...
算法打卡第18天
从中序与后序遍历序列构造二叉树 (力扣106题) 给定两个整数数组 inorder 和 postorder ,其中 inorder 是二叉树的中序遍历, postorder 是同一棵树的后序遍历,请你构造并返回这颗 二叉树 。 示例 1: 输入:inorder [9,3,15,20,7…...
