Linux(二):阿里云CentOS7部署SpringBoot项目
一.安装JDK
方法一.
1.yum命令下载JDK.
系统自带了jdk,我们可以通过以下命令查看所安装的jdk:
# yum list installed | grep java
2.通过以下命令查看jdk的信息:
# java -version
3.如果我们想卸载jdk,我们可以通过以下命令:
# yum -y remove java-1.8.0-openjdk*
4.卸载完成后,会出现complete! 再查看jdk版本时,会出现以下信息.
5.我们可以通过以下命令查看yum库中的jdk安装包
# yum -y list java-1.8.0-openjdk*
6.安装jdk的命令如下:
yum -y install java-1.8.0-openjdk*
安装完成后输入相关命令即可查看jdk,如文章开头.
方法二.
1.通过以下命令进入usr目录:
# cd /usr/local
2.然后再在该目录下创建一个文件javaTools用来保存相关的开发环境
# mkdir -p javaTools
3.进入该目录
# cd javaTools/
4.我们现在本地系统下载jdk,再上传到Linux服务器上,关于文件传输,可看此文:Linux文件互传。这里我们使用的是pscp进行文件传输。
如输入以下命令传送下载的jdk
pscp G:\jdk-8u181-linux-x64.tar.gz aaa@qq.com***.53:/usr/local/javaTools
5.下载完成后,在该目录下输入# ls 命令即可查看文件信息
6.通过以下命令进行解压:
# tar -zxvf jdk-8u181-linux-x64.tar.gz
7.配置jdk环境变量
vi命令打开以下文件
vi /etc/profile
在该文件末尾添加环境变量如下:
JAVA_HOME=/usr/local/javaTools/jdk1.8.0_181(jdk安装路径)
JRE_HOME=$JAVA_HOME/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib/dt.jar
export JAVA_HOME JRE_HOME PATH CLASSPATH
如下:
添加结束后,先按esc退出,底下INSERT消失后,输入":wq"保存文件;":q!"是退出不保存;编辑过程中按"dd"是删除光标所在一整行;"x"是删除光标所在的字符;"u"为恢复上一步的操作;"ctrl+r"为恢复上一步的操作。
8.启用新的配置
# source /etc/profile
即可查看jdk版本:
二.下载mysql5.7
1.查看是否有mysql服务
rpm -qa | grep mysql
或
yum list installed | grep mysql
卸载mysql
# yum -y remove mysql*
2.创建文件夹
进入所创文件夹
# cd /usr/local/javaTools
创建mysql文件夹
# mkdir -p mysql
3.下载mysql
使用wget下载一个 rpm包, 然后用 rpm -ivh xxx.rpm 安装这个软件
wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm
安装rpm -ivh mysql57-community-release-el7-8.noarch.rpm
rpm -ivh mysql57-community-release-el7-8.noarch.rpm
安装mysql
yum install mysql-server
4.安装完成
5.查看mysql默认密码
sudo grep 'temporary password' /var/log/mysqld.log
密码是随机生成的一个默认值
6.启动mysql,输入密码后,即可登录mysql,-u后面为用户名,即可登录
service mysqld start
# mysql -uroot -p
如果出现
进入
# vim /etc/my.cnf
最后一行加上(
skip-grant-tables
service mysqld restart
mysql -uroot -p
如果无法保存
1.按Esc键
2.输入 :set noreadonly
3.然后就能正常保存了,你可以输入 :wq 来保存文件了。
输入密码时直接回车跳过,设置新密码
update mysql.user set authentication_string=password('roof') where user='root' and Host = 'localhost';
刷新权限生效
mysql> flush privileges;
7.mysql退出与登录方法
MySQL登录
mysql -u帐号 -p密码 这是登陆
mysql退出三种方法:
mysql > exit;
mysql > quit;
mysql > \q;
8.重置密码
update mysql.user set authentication_string=password('roof') where user='root' and Host = 'localhost';
如果密码复杂度过低会出现报错:Your password does not satisfy the current policy requirements。
这一步可以像第6步修改my.cnf文件那样配置,就能设置安全度低的密码。
9.设置在任意ip下被访问
mysql> grant all privileges on *.* to aaa@qq.com"%" identified by "密码";
刷新权限生效
mysql> flush privileges;
10.设置用户root可以在本地访问
mysql> grant all privileges on *.* to aaa@qq.com"localhost" identified by "密码";
11.刷新权限生效
mysql> flush privileges;
12.查看mysql内置的数据库
mysql> show databases;
13.查看mysql的字符集
mysql> show variables like '%character%';
14.存放数据库文件的目录
# cd /var/lib/mysql
15.存放mysql日志的目录
# cd /var/log
16.更新密码
mysql> use mysql;
mysql> update mysql.user set authentication_string=password('roof') where user='root';
mysql> flush privileges;
17.mysql的操作
启动 MySQL 服务:
service mysqld start
关闭 MySQL 服务:
service mysqld stop
重启 MySQL 服务:
service mysqld restart
查看 MySQL 的状态:
service mysqld status
18.创建表
创建数据库
mysql> create database springboot;
查看数据库
show databases;
切换到数据库
mysql> use springboot;
创建表
mysql> CREATE TABLE users(
-> user_id varchar(20) primary key,
-> user_password varchar(20) not null
-> );
查看表信息
mysql> show columns from users;
插入数据
mysql> insert users(user_id,user_password)values('hly','123');
查看数据
mysql> select * from users;
三.下载tomcat
vim /etc/profile
1.创建文件夹
进入刚才所创建的文件
# cd /usr/local/javaTools
再创建tomcat文件夹
# mkdir -p tomcat
2.下载tomcat
wget http://archive.apache.org/dist/tomcat/tomcat-9/v9.0.0.M18/bin/apache-tomcat-9.0.0.M18.tar.gz
3.解压tomcat
tar -zxvf apache-tomcat-9.0.0.M18.tar.gz
4.配置tomcat环境变量
vim打开文件
vim /etc/profile
把配置文件添加到文件末尾
# tomcat
ATALINA_HOME=/usr/local/javaTools/tomcat/apache-tomcat-9.0.0.M18
CATALINA_BASE=/usr/local/javaTools/tomcat/apache-tomcat-9.0.0.M18
PATH=$PATH:$CATALINA_BASE/bin
export PATH CATALINA_BASE
5.打开catalina.sh文件,并加入以下配置
# cd ../bin/
# vim catalina.sh
JAVA_HOME=/usr/local/javaTools/jdk1.8.0_181
JRE_HOME=$JAVA_HOME/jre
6.启动tomcat,在bin目录下
# ./startup.sh
7.关闭tomcat
./shutdown.sh
8.tomcat默认端口为8080
打开tomcat,进入阿里云,添加自定义端口,输入域名:8080即可打开网页。
9.将tomcat加入系统服务列表
进入目录
# cd /etc/init.d
创建tomcat9服务配置文件
vi tomcat9
在文件中加入以下配置
#!/bin/bash
#!/bin/sh是指此脚本使用/bin/sh来解释执行,#!是特殊的表示符,其后面根的是此解释此脚本的shell的路径。
#!/bin/bash
# description: Tomcat Start Stop Restart
# processname: tomcat
# chkconfig: 2345 20 80
JAVA_HOME=/usr/local/javaTools/jdk1.8.0_181/
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
export PATH
CATALINA_HOME=/usr/local/javaTools/tomcat/apache-tomcat-9.0.0.M18/
case $1 in
start)
sh $CATALINA_HOME/bin/startup.sh
;;
stop)
sh $CATALINA_HOME/bin/shutdown.sh
;;
#chmod 755 tomcat
#chkconfig --add tomcat
#chkconfig --level 2345 tomcat on
#chkconfig --list tomcat
分配可执行权限
# chmod +x tomcat9
将tomcat纳入系统服务列表
# chkconfig --add tomcat9
查看当前的服务权限
# chkconfig --list
关闭 tomcat9 服务:
service tomcat9 stop
启动 tomcat9 服务:
service tomcat9 start
重启 tomcat9 服务:
service tomcat9 restart
4.部署SpringBoot项目
Spring Boot的Maven插件(Spring Boot Maven plugin)能够以Maven的方式为应用提供Spring Boot的支持,即为Spring Boot应用提供了执行Maven操作的可能。
Spring Boot Maven plugin能够将Spring Boot应用打包为可执行的jar或war文件,然后以通常的方式运行Spring Boot应用。
Spring Boot Maven plugin的最新版本为2017.6.8发布的1.5.4.RELEASE,要求Java 8, Maven 3.2及以后。 Spring Boot Maven
plugin的5个Goals:
- spring-boot:repackage,默认goal。在mvn package之后,再次打包可执行的jar/war,同时保留mvn package生成的jar/war为.origin。
- spring-boot:run,运行Spring Boot应用。
- spring-boot:start,在mvn integration-test阶段,进行Spring Boot应用生命周期的管理。
- spring-boot:stop,在mvn integration-test阶段,进行Spring Boot应用生命周期的管理。
- spring-boot:build-info,生成Actuator使用的构建信息文件build-info.properties。
1.在pom.xml里面加入插件
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<executable>true</executable>
</configuration>
</plugin>
完整的build插件
<build>
<finalName>MySpringBoot</finalName>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
<!--配置本地jar包在项目的存放路径 -->
</configuration>
</plugin>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<executable>true</executable>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
thymeleaf配置末尾不能加/否则打包后运行会出错
# thymeleaf
spring.thymeleaf.prefix=classpath:/templates
2.打包
右键点击项目—>Run As —>6maven build ,Goals如下,点击apple,点击Run打包.
打包后target里面有两个jar
3.cmd运行
4.上传至CentOS
1.文件上传方法
把jar包上传到服务器
执行成功
执行成功后如果关闭连接进程就会断开,我们可以在后台挂起进程,启动命令如下
# nohup java -jar MySpringBoot.jar >/root/myProject/springboot/springboot.log 2>&1 &
.log为日志所在的路径,查看日志
# cat springboot.log
- linux重定向
0:标准输入
1:标准输出
2:标准错误信息输出
- 将某个程序的错误信息输出到log文件中:./program 2>log。
标准输出还是在屏幕上,但是错误信息会输出到log文件中。
- 也可以实现0,1,2之间的重定向
2>&1:将错误信息重定向到标准输出。
- Linux下还有一个特殊的文件/dev/null,它就像一个无底洞,所有重定向到它的信息都会消失得无影无踪。
如果想要正常输出和错误信息都不显示,则要把标准输出和标准错误都重定向到/dev/null, 例如:
# ls 1>/dev/null 2>/dev/null
将错误重定向到标准输出,然后再重定向到 /dev/null,例如:
# ls >/dev/null 2>&1
- 在使用nohup命令的时候,经常由于输出nohup.out的路径没有写入权限,而无法使用nohup。
这是可以使用Linux重定向的方法,将nohup.out重定向至一个有写入权限的路径,或者直接扔到/dev/null中。
4.2.查看进程占用端口
4.2.1.通过端口
# netstat -apn | grep 8080
# kill -9 4610
4.2.2. 通过jar
# ps aux | grep MySpringBoot.jar
# kill -9 10623
终止进程,-9表示强迫停止进程
参考:
上一篇: 阿里云centOS7部署flask,python3
下一篇: React-state(状态)
推荐阅读
-
阿里云前后端分离环境部署(Linux + SpringBoot + Vue)
-
Linux(二):阿里云CentOS7部署SpringBoot项目
-
CentOS7部署javaweb项目到阿里云(Linux安装JDK,Tomcat,mysql)
-
阿里云服务器linux系统搭建Tomcat部署Web项目
-
如何在阿里云linux上部署java项目
-
1.连接和上传——利用idea中的cloud toolkit插件将springboot项目部署到阿里云
-
把web项目部署到阿里云linux服务器上
-
在阿里云上部署springboot项目
-
部署Springboot项目到阿里云(四)上传项目
-
SpringBoot项目打包部署阿里云服务器