百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

Centos8搭建Java环境(JDK1.8+Nginx+Tomcat9+Redis+Mysql)

ahcoder 2025-07-01 16:25 3 浏览

一、开篇

1.1 目的

每次换新的服务器,都要找资料配下环境,所以我写这篇文章,重新梳理了一下,方便了自己,希望也能给大家带来一些帮助。安装的软件有:JDK1.8 + Nginx + Tomcat9 + Redis + Mysql

1.2 服务器简介

昨天刚购买的1核2G服务器,运行了1天,软件都没有安装,内存使用情况 138M 内存。做个备注。

安装后:(用了 653M)


二、安装JDK

2.1 安装目录

一般我们安装到 /usr/local/ 这个目录下面

2.2 下载JDK

由于现在下载jdk1.8需要身份验证,所以无法用 wget 下载。可以手动下载下来,我们直接进入官方下载页面:
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

手动下载好
jdk-8u241-linux-x64.tar.gz
,保存起来,再上传到服务器的这个目录下 /usr/local/java/

2.3 解压

解压命令:使用tar -zxvf 文件名 进行解压。

解压成功后,会多出一个文件夹。

2.4 配置环境变量

使用命令:vi /etc/profile 进入配置文件进行编辑操作

文件的尾部加入4行代码即可

VI命令使用方法(按 i 进入编辑状态,按Esc退出编辑,输入 :wq! 命令保存退出即可完成配置)

代码如下:

#java

export JAVA_HOME=/usr/local/java/jdk1.8.0_241

export PATH=$JAVA_HOME/bin:$PATH

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib

然后使用命令使其生效:使用命令:source /etc/profile

2.5 测试安装成功


三、安装Nginx

3.1 Nginx官网地址

进入官网地址
http://nginx.org/en/download.html
,找到下载链接:
http://nginx.org/download/nginx-1.17.9.tar.gz
(当前版本)

3.2 下载Nginx

因为是nginx源码,所以我们把它下载到 /usr/local/src 目录下,切换目录下载文件

wget http://nginx.org/download/nginx-1.17.9.tar.gz

3.3 安装必要插件

安装命令:yum -y install gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel

gcc 它可以编译 C,C++,Ada,Object C和Java等语言

pcre pcre-devel pcre是一个perl库,包括perl兼容的正则表达式库,nginx的http模块使用pcre来解析正则表达式,支持Rewrite功能,所以需要安装pcre库

zlib zlib-devel zlib库提供了很多种压缩和解压缩方式nginx使用zlib对http包的内容进行gzip,所以需要安装

openssl openssl-devel openssl是web安全通信的基石,没有openssl,可以说我们的信息都是在裸奔

3.4 编译并安装Nginx(安装到/usr/local/nginx 目录)

解压nginx包,然后进入当前目录下执行以下命令进行编译和安装nginx

使用命令编译:./configure --prefix=/usr/local/nginx --with-http_v2_module --with-http_ssl_module --with-http_sub_module
--with-http_stub_status_module
--with-http_gzip_static_module --with-http_flv_module --with-http_mp4_module --with-pcre && make && make install

此处命令的意思就是:把nginx 安装到目录:/usr/local/nginx 目录下,并启用相关的模块。

其它辅助命令:(暂时不用操作)

#指定worker进程运行使用的用户和用户所属的用户组

#--user=username

#--group=groupname

3.5 配置开机启动服务

首先:映射全局命令:ln -s
/usr/local/nginx/sbin/nginx /usr/local/bin/nginx

然后:vi
/lib/systemd/system/nginx.service

输入以下内容,保存退出即可。

[Unit]

Description=nginx

After=network.target

[Service]

Type=forking

ExecStart=nginx

ExecReload=nginx reload

ExecStop=nginx quit

PrivateTmp=true

[Install]

WantedBy=multi-user.target


刷新服务:systemctl daemon-reload

输入开机启动命令:systemctl enable nginx.service

启动命令:service nginx start


3.6 检测安装是否成功


3.7 常用的命令

映射全局命令:ln -s
/usr/local/nginx/sbin/nginx /usr/local/bin/nginx

映射命令后,可以直接使用nginx来操作了。

nginx -s reload # 重新载入配置文件

nginx -t # 测配置文件nginx.conf正确性


四、安装Tomcat

4.1 安装目录

安装目录:/usr/local/tomcat

4.2 下载

下载地址:
https://tomcat.apache.org/download-90.cgi
手动下载后,再上传到服务器并进行解压

4.3 配置开机启动服务

输入:vi
/lib/systemd/system/tomcat.service

输入以下内容,保存退出即可。

[Unit]

Description=tomcat

After=network.target

[Service]

Type=forking

Environment='JAVA_HOME=/usr/local/java/jdk1.8.0_241' Environment='JRE_HOME=/usr/local/java/jdk1.8.0_241/jre'

ExecStart=/usr/local/tomcat/apache-tomcat-9.0.31/bin/startup.sh ExecStop=/usr/local/tomcat/apache-tomcat-9.0.31/bin/shutdown.sh ExecReload=/bin/kill -s HUP $MAINPID

RemainAfterExit=yes

[Install]

WantedBy=multi-user.target


刷新服务:systemctl daemon-reload

输入开机启动命令:systemctl enable tomcat.service

启动命令:service tomcat start

4.4 检测安装是否成功

五、安装Redis

5.1 安装目录

安装目录位于 /usr/local/redis/

5.2 下载

因为下载的是redis源码包,所以我们把它下载到 /usr/local/src 目录下,切换目录下载文件

wget
http://download.redis.io/releases/redis-5.0.5.tar.gz
如果无法下载,请手动下载再上传到服务器目录下面

解压操作

5.3 编译且安装

编译命令:make PREFIX=/usr/local/redis MALLOC=libc install

另外还要拷贝配置文件(复制到 /etc/redis/redis.config)

修改配置文件(默认的配置文件不是以守护进程来开启)

vim /etc/redis/redis.conf 找到这个位置(在前面)

把 daemonize : yes (默认是 no)

5.4 配置开机启动服务

命令:vim
/etc/systemd/system/redis.service

输入内容:

[Unit]

Description=redis-server

After=network.target

[Service]

Type=forking

ExecStart=/usr/local/redis/bin/redis-server /etc/redis/redis.conf

PrivateTmp=true

[Install]

WantedBy=multi-user.target


输入开机启动命令:systemctl enable redis

启动命令:service redis start


5.5 检测安装是否成功


5.6 修改密码

先用redis-cli 命令行方式连接上redis-server 来修改密码

config set requirepass 123456

说明没有密码后,所有操作都是未授权的。


六、安装Mysql

6.1 采用yum安装mysql

官网地址:
https://dev.mysql.com/downloads/repo/yum/

手动下载rpm包:我先临时放在/root/目录下面了。

执行命令:yum localinstall
/root/mysql80-community-release-el8-1.noarch.rpm


命令执行成功后:会在/etc/yum.repos.d/目录下产生两个文件

安装mysql : yum install mysql-community-server 提示:Unable to find a match:mysql community-server

解决方法:yum install mysql-server


6.2 配置开机启动服务

用yum 安装,不需要用到systemd脚本,都帮我们处理好了。

输入开机启动命令:systemctl enable mysqld (注意服务的名称是:mysqld )

启动命令:service mysqld start

6.3 检测安装是否成功

6.4 获取mysql初使化密码登录到mysql

命令:cat /var/log/mysql/mysqld.log | grep password

看到提示我们知道:是空密码,可以直接进入系统


七、总结

以上几个软件的安装,基本上以手动安装为主,可以选择版本,选择安装目录,另外都做了开机启动的systemd脚本配置,方便快捷,亲测有效,希望能给大家带来帮助。

相关推荐

Redis内存这样优化,性能炸裂(redis内存占用和优化)

一、背景使用过Redis的同学应该都知道,它基于键值对(key-value)的内存数据库,所有数据存放在内存中,内存在Redis中扮演一个核心角色,所有的操作都是围绕它进行。我们在实际维护过...

一文带你详解Nginx/OpenResty,Nginx Lua编程基础,学不会别怪我

NginxLua编程基础OpenResty通过汇聚各种设计精良的Nginx模块(主要由OpenResty团队自主开发)将Nginx变成一个强大的通用Web应用平台。这样,Web开发人员和系统工程师可...

你真的懂Spring Cloud+Nginx秒杀实战,Nginx高性能秒杀和限流吗?

Nginx高性能秒杀和限流从性能上来说,内部网关Zuul限流理论上比外部网关Nginx限流的性能会差一些。和Zuul一样,外部网关Nginx也可以通过Lua脚本的形式执行缓存在Redis内部的令牌桶限...

在群晖NAS上搭建网站的完整指南(群晖nas部署)

群晖NAS不仅可以存储数据,还能作为功能完善的网站服务器使用。以下是搭建网站的详细步骤:一、准备工作确认NAS型号:确保您的群晖NAS支持WebStation(大多数x86机型都支持)域名准备(可选...

tomcat+redis+nginx的session共享

上两节中,我们使用nginx+tomcat+memcached+MSM实现session共享,如何有需要对nginx负载均衡方面的知识需要了解的话,可以关注我的头条号:一点热。然后阅读之前的文章。同时...

终于靠这篇文章学透了Nginx/OpenResty详解,NginxLua编程

NginxLua编程经过合理配置,Nginx毫无疑问是高性能Web服务器很好的选择。除此之外,Nginx还具备可编程能力,理论上可以使用Nginx的扩展组件ngx_lua开发各种复杂的动态应用。不过...

从需求到上线:PHP+Uniapp校园圈子系统源码的架构设计与性能优化

一、需求分析与架构设计1.核心功能需求用户体系:支持手机号/微信登录、多角色权限(学生、教师、管理员)。圈子管理:支持创建/加入兴趣圈子(如学术、电竞)、标签分类、动态发布与审核。实时互动:点赞、评...

六星教育PHP大神进阶班怎么样?值不值得去听?

点进这篇文章的人可能现在正面临着几个很难选择的问题,比如学PHP要不要报培训班?或者是该怎样选择PHP课程?又或是六星教育的PHP大神进阶班好不好,能不能去?在这里就给你们都一个一个解答了!首先,要...

Centos8搭建Java环境(JDK1.8+Nginx+Tomcat9+Redis+Mysql)

一、开篇1.1目的每次换新的服务器,都要找资料配下环境,所以我写这篇文章,重新梳理了一下,方便了自己,希望也能给大家带来一些帮助。安装的软件有:JDK1.8+Nginx+Tomcat9+...

PHP游戏陪玩APP小程序家政系统项目复盘:从需求分析到上线运维

一、需求分析阶段1、核心功能模块用户模块:支持用户注册、登录、身份认证(区分陪玩师与普通用户)、个人信息管理。订单模块:实现下单、接单、订单状态流转(待支付、进行中、已完成、已取消)的全流程管理。技能...

我采访了一位 Pornhub 工程师,聊了这些纯纯的话题

成人网站在推动Web发展方面所起到的作用无可辩驳。从突破浏览器的视频能力限制,到利用WebSocket推送广告(防止被广告拦截器拦截),你必须不断想出各种聪明的办法,让自己处在Web技术创...

硬核拆解:如何用Redis+Nginx打造高可用网关集群?

在云原生架构中,API网关作为流量中枢,其部署架构常采用无状态节点+集群化设计,前端通过F5或Nginx实现四层/七层负载均衡。数据库可选用Oracle或MySQL,结合Redis实现分布式缓存,例如...

无技术门槛,轻松搞定一个好用的企业网盘——可道云teamOS

在数字化时代,企业数据的共享与协作是企业快速发展的关键。但是对于没有专业技术人员的企业来说,搭建一个企业网盘实在是有点复杂。有此困扰的公司,不妨试一下可道云teamOS。能一键搭建的网盘系统teamO...

Docker安装及mysql、redis实战(dockerfile安装redis)

1.Docker安装确定CentOS7及以上版本cat/etc/redhat-release卸载旧版本yumremovedocker\docker-client\docker-clien...

云原生(十七) | Kubernetes 篇之深入了解 Deployment

深入了解Deployment一、什么是Deployment一个Deployment为Pods和ReplicaSets提供声明式的更新能力。你负责描述Deployment中的目标状...