Linux服务器上安装 JDK、MySQL、Tomcat、Redis、Nginx
利用 XFtp工具 将 JDK MySQL Tomcat Redis 压缩包上传到 Linux 服务器上
相关压缩包百度网盘下载地址:百度网盘 提取码: 29up
利用 XShell 工具连接到 远程服务器
一、JDK 安装与配置
1.1、 解压
-
cd /usr/local/jdk
转到压缩包目录 -
tar -zxvf jdk1.8.tar.gz
解压文件解压后的文件:
1.2、配置环境变量
-
vi /etc/profile
进入文件中,配置环境变量 ,按i进行编辑输入如下内容:
#set java environment JAVA_HOME=/usr/local/jdk/jdk1.8.0_211 CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar PATH=$PATH:$JAVA_HOME/bin export JAVA_HOME CLASSPATH PATH
-
按 ESC 键 输入 :wq 回车保存
-
source /etc/profile
使文件生效
1.3、查看
-
java -version
查看是否配置成功?
二、MySQL 安装与配置
2.1、 解压
-
cd /usr/local/mysql
转到压缩包目录 -
tar -xvf mysql-8.0.17.tar
解压文件解压后的文件:
2.2、安装与配置
-
检查依赖
# 安装mysql-server需要libaio依赖,所以先确保安装了此依赖 yum install -y libaio # 安装mysql-server需要net-tools依赖,所以先确保安装了此依赖 yum install -y net-tools # 安装mysql-server需要perl依赖,所以先确保安装了此依赖 yum install -y perl
-
安装 common
rpm -ivh mysql-community-common-8.0.17-1.el7.x86_64.rpm --nodeps --force
-
安装 libs
-
rpm -ivh mysql-community-libs-8.0.17-1.el7.x86_64.rpm --nodeps --force
在CentOS7最新版本中,执行上述安装命令时,可能会出现以下问题:
mariadb-libs is obsoleted by mysql-community-libs-8.0.25-1.el7.x86_64
此时只需要执行yum remove mysql-libs
命令即可。
-
-
安装 client
rpm -ivh mysql-community-client-8.0.17-1.el7.x86_64.rpm --nodeps --force
-
安装 server
rpm -ivh mysql-community-server-8.0.17-1.el7.x86_64.rpm --nodeps --force
-
查看已安装的包
rpm -qa | grep mysql
-
初始化
# 初始化mysql服务 mysqld --initialize # 在运行mysql服务时,会通过mysql用户去读写/var/lib/mysql文件夹中的数据文件,而该文件夹中的数据文件是属于root用户和root用户组的,其他用户只拥有读权限,因此需要赋予mysql用户读写该文件夹中数据文件的权限。 # 这里有两种解决办法(建议使用第一种) # 1、将该文件夹及其子文件的所属用户和用户组更改为mysql用户和mysql用户组。 chown -R mysql:mysql /var/lib/mysql 或 # 2、将该文件夹及其子文件的读写权限赋予给其他用户(因为mysql用户相对于root用户而言,是属于其他用户) chmod -R o=rwx /var/lib/mysql # 启动mysql服务 systemctl start mysqld # 设置开机自启动 systemctl enable mysqld
-
查看数据库密码
cat /var/log/mysqld.log | grep password
-
登录
mysql -u root -p
-
第一次登录之后 必须修改密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
-
说明是 所设置的密码不符合MySQL8.0默认的密码策略(刚开始设置的密码必须符合长度,且必须含有数字,小写或大写字母,特殊字符)
-
先随便修改个符合规定的密码:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Root_12root';
-
再查看 mysql 初始的密码策略
SHOW VARIABLES LIKE 'validate_password%';
-
修改密码验证策略
set global validate_password.policy=0; set global validate_password.length=1;
-
再进行修改密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
-
2.3、配置远程连接
-
登录
mysql -u root -p
-
使用 mysql 数据库
use mysql;
-
查看用户访问权限
select user,host from user;
-
修改访问权限
update user set host='%' where user='root';
-
刷新权限
flush privileges;
2.4、测试连接
2.5、BUG
重启mysql服务时,出现以下情形:
解决方法:
- 出现这种错误,有很多种不同的情况,可以去百度
- 这里是由于 其他 SpringBoot项目 在使用 MySQL 数据库 ,所以先把这些应用关闭
- 直接杀死进程(根据端口)
sudo fuser -k -n tcp 端口号
- 再启动 MySQL 服务
2.6、其他相关 MySQL 命令
systemctl stop mysqld
停止 MySQL 服务systemctl start mysqld
启动 MySQL 服务systemctl restart mysqld
重启 MySQL 服务systemctl status mysqld
查看 MySQL 服务的启动状态
三、Tomcat 安装
3.1、 解压
-
cd /usr/local/tomcat
转到压缩包目录 -
yum install -y unzip zip
安装 zip 和 unzip 命令 -
unzip tomcat9.zip
解压文件解压后的文件:
3.2、启动 Tomcat
-
cd /usr/local/tomcat/apache-tomcat-9.0.20/bin/
转到 tomcat 的 bin目录 -
./startup.sh
启动服务器-
发现报错 Permission denied (权限不够)
-
解决方法
- 如果你是root登陆的话(不是的话,切换到root用户)
chmod +x *.sh
对 *.sh 命令赋可执行的权限- 重新启动tomcat
cd /usr/local/tomcat/apache-tomcat-9.0.20/bin/
./startup.sh
-
3.3、访问 tomcat
-
访问
47.98.165.28:8080
查看是否可以成功访问
四、Redis 安装
4.1、 解压
-
cd /usr/local/redis
转到压缩包目录 -
tar -xvf redis5.0.tar.gz
解压文件解压后的文件:
4.2、安装与配置
-
cd /usr/local/redis/redis-5.0.5
进入目录中 -
make
使用make命令进行编译- 编译完成后,会在src目录下生成6个可执行文件。分别是
redis-server
、redis-cli
、redis-benchmark
、redis-check-aof
、redis-check-rdb
、redis-sentinel
- 编译完成后,会在src目录下生成6个可执行文件。分别是
-
make install
使用make install命令进行安装- 安装完成后,会在/usr/local/bin目录下,生成上述6个文件{
redis-server
、redis-cli
、redis-benchmark
、redis-check-aof
、redis-check-rdb
、redis-sentinel
}。所以,在任何地方都能够直接使用redis-cli
以及redis-server
命令。 - 执行
redis-server redis配置文件
命令就可以直接启动redis了。到此安装结束,以下步骤是可选操作。
- 安装完成后,会在/usr/local/bin目录下,生成上述6个文件{
-
(可选操作)执行服务安装脚本
./utils/install_server.sh
,将Redis以服务的方式安装到系统中。安装的服务可在/etc/init.d
目录下查看。(当需要安装多个不同端口的Redis服务时,可以多次执行该服务安装脚本,并配置端口号及其他配置文件)一阵回车就OK了
-
查看开机启动列表
chkconfig --list
此时开启Redis服务,可以通过
systemctl start redis_6379
命令,也可通过(service redis_6379 start
)此时关闭Redis服务操作可以通过
systemctl stop redis_6379
命令,也可通过(service redis_6379 stop
) -
配置 redis 服务相关信息
-
cd /etc/redis
转到该目录下 -
vi 6379.conf
编辑该配置文件-
在 bind 127.0.0.1 前 加 “#” 将其注释掉 (这样才能实现远程访问连接)
-
关闭保护模式,将 protected-mode yes 改为 protected-mode no,这样才允许其他主机访问。
-
将 daemonize no 改为 daemonize yes,这样才能实现后台启动redis数据库。
-
将 requirepass foobared前的“#”去掉,密码改为你想要设置的密码
-
:wq 保存
-
-
-
重启 redis
systemctl stop redis_6379
关闭redissystemctl start redis_6379
启动redis
4.3、BUG
关闭服务时,可能出现以下bug ,此时使用 redis-cli -a 123456 shutdown
命令解决
4.4、测试连接
4.5、 其他相关 Redis 命令
redis-cli [-a] [password]
进入 Redis 命令行set key value
设置键值对存储keys *
查看相匹配的所有 key 值setex key expire value
设置键值对存储并指定失效时间expire key ttl
对某个键设置失效时间persist key
取消某个键的失效时间(即设置为永久存储)ttl key
根据 key 值查看对应的剩余失效时间quit
退出 Redis 命令行
五、Nginx安装
5.1 安装依赖
- 在安装nginx前首先要确认系统中是否安装了 gcc、pcre-devel、zlib-devel、openssl-devel 依赖
- 使用 yum 一键安装依赖
yum -y install gcc pcre-devel zlib-devel openssl openssl-devel
5.2 下载nginx压缩包
- 下载地址:https://nginx.org/download/
- 将下载的 nginx-1.9.9.tar.gz 压缩包上传至服务器
/usr/local
目录
5.3 解压安装
- 将压缩包解压至当前目录
/usr/local/nginx-1.9.9
tar -zxvf nginx-1.9.9.tar.gz
- cd 到
/usr/local/nginx-1.9.9
目录下,依次执行以下命令
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
make
make install
5.4 启动nginx
- 执行完毕后,会生成
/usr/local/nginx
目录,进入该目录
cd /usr/local/nginx
cd sbin
./nginx ----启动nginx服务
5.5 访问nginx
六、SpringBoot 项目部署
6.1 将需要上传的项目打成 jar 包
6.2、利用 XShell 工具连接上 Linux 服务器
6.3、将 jar 包上传到 Linux 服务器上
6.4、运行 jar 包(后台运行)
-
nohup java -jar eureka.jar >eureka-log.txt &
后台运行 jar 包,并且将启动信息及后续日志 打印到 eureka-log.txt 文件中 -
nohup java -jar oauth.jar >oauth-log.txt &
-
nohup java -jar zuul.jar >zuul-log.txt &
-
nohup java -jar user-biz.jar >user-biz-log.txt &
-
nohup java -jar app.jar >app-log.txt &
6.5 其他相关 Linux 命令
netstat -ant
查看服务器所有被占用端口netstat -tunlp | grep 端口号
验证某个端口号是否被占用netstat -tunlp | grep 端口号
查看所有监听端口号sudo fuser -k -n tcp 端口号
根据 端口号 直接杀死进程free -mh
查看内存使用情况echo 3 > /proc/sys/vm/drop_caches
清除缓存top
查看 CPU 使用情况top -p 进程号
监听某个进程 CPU 使用情况ps -ef|grep java
查看与 java 相关的进程(可以查看对应的进程号)kill -9 进程号
根据 进程号 直接结束进程crontab -e
查看定时任务