Linux服务器搭建JavaWeb环境(JDK,Tomcat,MySQL,Redis)

Linux服务器部署JavaWeb环境

前言

最近学习没啥动力,偶然发现同属Java后端开发学长的博客巨厉害,自己也早就有写博客的想法但是一直拖延下去遥遥无期,于是乎在学长的刺激下开始的不知道能打几天渔的博客写作,主要是记录一些日常Bug和笔记吧,毕竟学了的东西老是忘了也不是个事啊。

软件部署

1. 安装JDK1.8

首先查看一下本地有没有默认安装的jdk

rpm -qa | grep java
rpm -qa | grep jdk

我这里是阿里CenOS 7.6的轻量服务器,是没有默认安装的

为了安装后避免配置环境变量类似的问题 其实是我懒得配,这里采用Oracle JDK-8u201的版本,因为Oracle JDK 从 8u201/202 的以后版本开始收费了,所以这也就是最后一个免费可商用版本了,当然如果安装open JDK也是可以的。

cd 到rpm安装包目录下,使用命令

rpm -ivh jdk-8u201-linux-x64.rpm

最近在学linux,这里指令参数也记录一下

-i 安装
-v 显示正在安装的文件信息
-h 显示安装进度

2. 安装MySQL 5.7

由于服务器是1核2G,宝塔那里内存6G才推荐安装MYSQL 8.0,所以这里使用的版本是Linux通用版本
mysql-5.7.32-linux-glibc2.12-x86_64.tar.gz

解压MySQL

查看当前服务器有没有安装mysql

rpm -qa | grep mysql

如果有的话将其卸载

rpm -e --nodeps mysql…(你的mysql)

解压mysql压缩包

tar -zxvf mysql-5.7.32-linux-glibc2.12-x86_64.tar.gz

重命名简洁一些

mv mysql-5.7.32-linux-glibc2.12-x86_64 mysql-5.7.32

将其移动到
/usr/local/下,这个文件夹一般存放我们安装的软件

cd mv mysql-5.7.32 /usr/local/

创建mysql用户组

在正式配置MySQL之前,我们要开始创建mysql用户组和用户,这样可以在MySQL被黑掉之后我们的root权限不会泄露,当然这步是可以直接跳过的
检查mysql组和用户是否存在,如果没有则创建

cat /etc/group | grep mysql
groupadd mysql

在mysql用户组中添加mysql用户,并将其设置为系统用户,不可用于登录系统

useradd -r -g mysql mysql

mysql用户创建完毕

安装MySQL

开始安装数据库
创建data目录用于存放数据

cd /usr/local/mysql-5.7.32
mkdir data

将/usr/local/mysql-5.7.32的所有者及所属组改为mysql

chown -R mysql.mysql /usr/local/mysql-5.7.32

在/usr/local/mysql-5.7.32/support-files目录下创建my_default.cnf 复制以下配置代码

[mysql]
default-character-set=utf8

[mysqld]
#设置mysql的安装目录
basedir=/usr/local/mysql-5.7.32
#设置mysql数据库的数据存放目录
datadir=/usr/local/mysql-5.7.32/data
#设置端口
port=3306

socket=/tmp/mysql.sock
#设置字符集
character-set-server=utf8
#日志存放目录
log-error=/usr/local/mysql-5.7.32/data/mysqld.log
pid-file=/usr/local/mysql-5.7.32/data/mysqld.pid
#允许时间类型的数据为零(去掉NO_ZERO_IN_DATE,NO_ZERO_DATE)
sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
#ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

将其复制到etc下my.cnf

cp my_default.cnf /etc/my.cnf

安装mysql依赖(如果服务器中有这个的话可以跳过)

yum install libaio

初始化mysql,在mysql目录下执行

./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql-5.7.28/ --datadir=/usr/local/mysql-5.7.28/data/

初始化后会生成密码,我们查看日志

cat /usr/local/mysql-5.7.28/data/mysqld.log

最后一行中会提示生成了一个随机密码,复制一下等下登录要用到.

把MySQL的启动命令复制到Linux中

cp /usr/local/mysql-5.7.32/bin/my_print_defaults /usr/bin

把启动脚本放到开机初始化目录

cp support-files/mysql.server /etc/init.d/mysql

接下来我们就可以启动MySQL了

service mysql start

配置MySQL

由于我们还没有配置环境变量,我们使用mysql需要进入到MySQL bin中才可以

./bin/mysql -u root -p

进入MySQL后我们需要进行一些配置,比如更改初始密码,开启远程访问等等.
更改密码

set password=password(‘123456’);

权限赋给root用户,所有ip都能连接, 刷新MySQL的系统权限相关表

grant all privileges on *.* to root@’%’ identified by ‘123456’;
flush privileges;

添加远程访问权限

use mysql;
update user set host=’%’ where user = ‘root’;

这里可能会报错,查询一下如果更改了就没关系直接刷新重启

flush privileges;
quit;
service mysql restart

MySQL部署完成

MySQL这部分参考了 https://www.cnblogs.com/wendy-0901/p/12673705.html

3.安装Tomcat 8.5

下载链接

在usr/local/下创建tomcat文件夹

mkdir tomcat

将压缩包解压

tar -zxvf apache-tomcat-8.5.63.tar.gz

linux指令参数

-z 通过gzip支持压缩或解压缩。还有其他的压缩或解压缩方式,比如j表示bzip2的方式。
-x 解压 -c 压缩
-v 在压缩或解压缩过程中显示正在处理的文件名
-f f后面必须跟上要处理的文件名。不能写成这样 tar -zxfv

进入tomcat/bin 目录下试运行tomcat

./startup.sh

4.安装redis

redis需要c++编译安装,首先安装gcc环境,一路y

yum install gcc-c++

目前使用的是 redis-5.0.12.tar.gz

解压

tar -xzvf redis-5.0.12.tar.gz

编译安装,切换至程序目录,并执行make命令编译:

cd redis-5.0.12
make

编译完成执行安装,同样安装到 /usr/local/redis/ 下

make PREFIX=/usr/local/redis install

配置redis,启动时需要用到的配置文件在解压目录中,我们将redis.conf 复制到安装目录下的bin中方便启动时调用.

cp redis.conf /usr/local/redis/bin

启动redis服务端,在redis/bin目录下

./redis-server redis.conf

克隆新窗口,启动redis客户端

./redis-cli

目前项目太小,还没有用到tomcat集群,暂时没有安装Nginx,之后会继续更新的.
欢迎交流讨论 鸭

你可能感兴趣的:(环境部署,linux,java,mysql,centos,服务器)