Linux下java项目环境搭建
linux服务器版本为 CentOS Linux release 7.6.1810 (Core)
环境需求:
安装及配置 jdk8, mysql5.7, redis, nginx
安装JDK8
卸载原生openjdk
先查询自带jdk版本
[root@localhost ~]# java -version
openjdk version "1.8.0_181"
OpenJDK Runtime Environment (build 1.8.0_181-b13)
OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)
查询自带的OpenJDK及版本 rpm -qa | grep jdk
[root@localhost ~]# rpm -qa |grep jdk
copy-jdk-configs-3.3-10.el7_5.noarch
java-1.8.0-openjdk-headless-1.8.0.181-7.b13.el7.x86_64
java-1.8.0-openjdk-1.8.0.181-7.b13.el7.x86_64
删除自带jdk版本
rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.181-7.b13.el7.x86_64
rpm -e --nodeps java-1.8.0-openjdk-1.8.0.181-7.b13.el7.x86_64
再次查看版本确认是否删除成功java -version
[root@localhost ~]# java -version
-bash: /usr/bin/java: 没有那个文件或目录
安装jdk8
- 前往oracle 下载jdk https://www.oracle.com/java/technologies/downloads/#java8
- 使用xtfp 将tar包上传至/opt目录下
- 解压缩
tar -zxvf jdk-8u291-linux-x64.tar.gz
- 配置环境变量
vim /etc/profile
# 在文件中加上java环境变量
export JAVA_HOME=/opt/jdk1.8.0_291
export PATH=$JAVA_HOME/bin:$PATH
source /etc/profile
使配置文件生效- 直接查看java版本信息
java -version
[root@localhost /]# java -version
java version "1.8.0_291"
Java(TM) SE Runtime Environment (build 1.8.0_291-b10)
Java HotSpot(TM) 64-Bit Server VM (build 25.291-b10, mixed mode)
安装mysql
删除mariadb
mariadb是mysql的分支, 如果linux中有自带需要删除
查询是否有安装 yum list installed | grep mariadb
[root@localhost ~]# yum list installed | grep mariadb
mariadb-libs.x86_64 1:5.5.60-1.el7_5
删除mariadb yum -y remove mariadb-libs.x86_64
如果删除不成功需要去掉-y
手动确认
安装并配置mysql
下载mysql包
- 使用xftp上传至linux
- 解压缩
tar -xvf mysql-5.7.37-1.el7.x86_64.rpm-bundle.tar
[root@localhost opt]# tar -xvf mysql-5.7.37-1.el7.x86_64.rpm-bundle.tar
mysql-community-client-5.7.37-1.el7.x86_64.rpm
mysql-community-common-5.7.37-1.el7.x86_64.rpm
mysql-community-devel-5.7.37-1.el7.x86_64.rpm
mysql-community-embedded-5.7.37-1.el7.x86_64.rpm
mysql-community-embedded-compat-5.7.37-1.el7.x86_64.rpm
mysql-community-embedded-devel-5.7.37-1.el7.x86_64.rpm
mysql-community-libs-5.7.37-1.el7.x86_64.rpm
mysql-community-libs-compat-5.7.37-1.el7.x86_64.rpm
mysql-community-server-5.7.37-1.el7.x86_64.rpm
mysql-community-test-5.7.37-1.el7.x86_64.rpm
开始安装mysql 依次安装
common, libs, client, server
rpm -ivh mysql-community-common-5.7.37-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.37-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.37-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.37-1.el7.x86_64.rpm
- 启动mysql
systemctl start mysqld.service
设置root密码
- 先查询自动生成的密码
grep "password" /var/log/mysqld.log
- 先查询自动生成的密码
[root@localhost opt]# grep "password" /var/log/mysqld.log
2022-04-06T08:40:35.774472Z 1 [Note] A temporary password is generated for root@localhost: 9rih*2)AEwXr
设置密码优先级
- 先使用临时密码登录root用户
set global validate_password_policy=0
设置密码复杂度,(生产环境不建议使用太简单的密码)set password for 'root'@'localhost'=password('root');
修改root用户密码flush privileges
使更改生效
设置远程登录
- 进入mysql 更新 mysql库下的user表
update user set Host = '%' where User = 'root';
- 防火墙开放3306端口
安装redis
- 前往redis官网下载源码包 https://redis.io/download/
- 安装版本为
redis-4.0.10.tar.gz
仅作参考 - 上传tar包至 /opt 下
- 执行
tar -zxvf redis-4.0.10.tar.gz
解压缩 - 安装gcc
yum install -y gcc
(未通外网服务器需要离线安装) - 进入redis目录 执行
make MALLOC=libc
- 编译完成后执行
make install PREFIX=/usr/redis
- 进入/usr/redis 目录
./redis-server
启动redis 验证是否安装成功 - 开放redis端口 并配置redis.conf
安装nginx
http://nginx.org/en/download.html
从官网下载tar包
# 1.将tar包扔到linux上
# 2.解压 根据具体版本
tar -zxvf nginx-1.20.2.tar.gz
# 3.进入nginx目录
cd nginx-1.20.2/
./configure
make
make install
# 安装好的nginx目录在 /usr/local/nginx/
cd /usr/local/nginx/sbin/
# 启动nginx
./nginx
在线安装依赖环境
- 需要有gcc环境
gcc -v # 查看版本
yum install gcc-c++ # 如果没有的话就安装一下
- PCRE pcre-devel 安装
PCRE(Perl Compatible Regular Expressions) 是一个Perl库,包括 perl 兼容的正则表达式库。nginx 的 http 模块使用 pcre 来解析正则表达式,所以需要在 linux 上安装 pcre 库,pcre-devel 是使用 pcre 开发的一个二次开发库。nginx也需要此库。命令:
yum install -y pcre pcre-devel
- zlib 安装
zlib 库提供了很多种压缩和解压缩的方式, nginx 使用 zlib 对 http 包的内容进行 gzip ,所以需要在 Centos 上安装 zlib 库。
yum install -y zlib zlib-devel
- OpenSSL 安装
OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议,并提供丰富的应用程序供测试或其它目的使用。
nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http),所以需要在 Centos 安装 OpenSSL 库。
yum install -y openssl openssl-devel
离线安装依赖环境
首先查看Linux 的系统版本号
cat /etc/redhat-release
[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)
- 下载相应版本的镜像文件
- http://vault.centos.org/7.6.1810/isos/x86_64/
- 解压下载的镜像, 前面Packages目录 找出以下rpm包
autogen-libopts-5.18-5.el7.x86_64.rpm
cpp-4.8.2-16.el7.x86_64.rpm
gcc-4.8.2-16.el7.x86_64.rpm
glibc-devel-2.17-55.el7.x86_64.rpm
glibc-headers-2.17-55.el7.x86_64.rpm
kernel-headers-3.10.0-123.el7.x86_64.rpm
keyutils-libs-devel-1.5.8-3.el7.x86_64.rpm
krb5-devel-1.11.3-49.el7.x86_64.rpm
libcom_err-devel-1.42.9-4.el7.x86_64.rpm
libmpc-1.0.1-3.el7.x86_64.rpm
libselinux-devel-2.2.2-6.el7.x86_64.rpm
libsepol-devel-2.1.9-3.el7.x86_64.rpm
libverto-devel-0.2.5-4.el7.x86_64.rpm
mpfr-3.1.1-4.el7.x86_64.rpm
ntp-4.2.6p5-18.el7.centos.x86_64.rpm
ntpdate-4.2.6p5-18.el7.centos.x86_64.rpm
openssl098e-0.9.8e-29.el7.centos.x86_64.rpm
openssl-1.0.1e-34.el7.x86_64.rpm
openssl-devel-1.0.1e-34.el7.x86_64.rpm
openssl-libs-1.0.1e-34.el7.x86_64.rpm
pcre-devel-8.32-12.el7.x86_64.rpm
pkgconfig-0.27.1-4.el7.x86_64.rpm
tcl-8.5.13-4.el7.x86_64.rpm
zlib-1.2.7-13.el7.x86_64.rpm
zlib-devel-1.2.7-13.el7.x86_64.rpm
- 上传至linux
- 执行
rpm -Uvh ./*.rpm --nodeps --force
Nginx常用命令
cd /usr/local/nginx/sbin/
./nginx 启动
./nginx -s stop 停止
./nginx -s quit 安全退出
./nginx -s reload 重新加载配置文件
ps aux|grep nginx 查看nginx进程
如果端口访问不了请检查是否放行相关端口
# 开启
service firewalld start
# 重启
service firewalld restart
# 关闭
service firewalld stop
# 查看防火墙规则
firewall-cmd --list-all
# 查询端口是否开放
firewall-cmd --query-port=8080/tcp
# 开放80端口
firewall-cmd --permanent --add-port=80/tcp
# 移除端口
firewall-cmd --permanent --remove-port=8080/tcp
#重启防火墙(修改配置后要重启防火墙)
firewall-cmd --reload
# 参数解释
1、firwall-cmd:是Linux提供的操作firewall的一个工具;
2、--permanent:表示设置为持久;
3、--add-port:标识添加的端口;
Comments | NOTHING