Linux下java项目环境搭建


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

# 在文件中加上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

[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) 
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:标识添加的端口;

声明:木心|版权所有,违者必究|如未注明,均为原创|本网站采用BY-NC-SA协议进行授权

转载:转载请注明原文链接 - Linux下java项目环境搭建


Carpe Diem and Do what I like