持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第15天,点击查看活动详情
1、Linux搭建JavaEE环境
Linux的安装,安装步骤比较繁琐(操作系统本身也是一个软件),所以我是双十一购买了轻量云服务器进行学习。而且这样也更加接近真实线上的工作。
1.1、安装JDK
- mkdir /opt/jdk
- 下载 jdk
- 在上传之前,我们要去 oracle 官网下载jdk,我这里演示下载 jdk8
- 打开oracle网站下载地址:www.oracle.com/cn/java/tec…
- 我们下载rpm包和压缩包,因为我这里记录 rpm 包安装和 压缩包安装,所以我将两者都下载
当然oracle官网下载还要登录,有时候网络影响也会造成下载失败。这里我偶然间发现了一个网站,可以镜像下载jdk,且版本较全。
编程宝库:JDK下载
1.1.1、压缩包安装
- 将 jdk 通过 xftp 上传到
/opt/jdk下。我这里先演示压缩包的安装
cd /opt/jdk- 解压
tar -zxvf jdk-8u202-linux-x64.tar.gz
mkdir /usr/local/javamv /opt/jdk/jdk1.8.0_202 /usr/local/java
- 配置环境变量的配置文件
vim /etc/profile,将下方代码粘贴进去,之后 :wq保存
# 在配置文件的最下面添加以下两句话
export JAVA_HOME=/usr/local/java/jdk1.8.0_202
export PATH=$JAVA_HOME/bin:$PATH
- source /etc/profile 让新的环境变量生效
- echo $PATH 查看环境变量
- javac -version 查看
第一步(获取jdk):
第二步(设置环境变量):
第三步(编写代码实验):
1.1.2、rpm安装
rpm 安装和压缩包基本一样,我们将下载的 rpm 包通过 xftp 上传到 Linux 服务器上,进行安装。
rpm -ivk rpm包
只需要运行上述命令即可,这里需要注意的是:rpm 方式不需要配置环境变量
直接就可以java -version 查看即可
1.1.3、jdk卸载
# rpm -qa|grep jdk # 检测jdk版本信息
# rpm -e --nodeps jdkxxx
卸载也很简单,首先检测 jdk 版本信息,之后会过滤出已安装jdk包的信息,之后执行第二个条强制删除命令即可
1.2、tomcat的安装
- 进入tomcat官网下载tomcat,我这里下载 tomcat9
- 上传安装文件,并解压到 /opt/tomcat
mkdir /opt/tomcat
cd /opt/tomcat tar
-zvxf tomcat # 解压 tomcat 文件
- 进入解压目录 /bin,启动 tomcat ./startup.sh
PS:记得要使用 ./startup.sh 命令
# 启动 ./startup.sh
# 停止 ./shotdown.sh
- 开放端口8080
firewall-cmd --permanent --add-port=8080/tcp
firewall-cmd --reload # 加载刚刚打开的端口
- 在windows、linux 下访问 http://linuxip:8080
1.3、mysql5.7的安装
在安装前需要确定现在这个系统有没有 MySQL,如果有那么必须卸载。尤其是新的 CentOS 7 系统,它自带mariaDB数据库,所以需要卸载掉。
- 查找已安装的MySQL软件包
rpm -qa|grep mysql
- CentOS7下还需要查找是否存在mariadb包
rpm -qa|grep mariadb
- 如果输入上述两个命令后都输出存在有包,则需要执行删除命令
rpm -e --nodeps mysqlxxx # --nodeps 强制删除
rpm -e --nodeps mariadbxx
例如我的服务器有 mariadb 数据库,它会与mysql相冲突
- 新建文件夹/opt/mysql
mkdir /opt/mysql
cd /opt/mysql
- 下载 MySQL 安装包,进入如下网站下载:downloads.mysql.com/archives/co…
我们既可以下载下来使用xftp上传到服务器,也可以在 Download 按钮右键复制链接地址,然后使用如下命令命令行下载
wget 下载链接 (wget 其实就和 yum 一样,也就是通过网络去获取对应软件的安装包)
两种方法都可以使用,速度都不是很快,我这里参考此篇文章获取别人分享的 rpm 文件:blog.csdn.net/qq_43280818…
tar -xvf mysqlxxx.rmp_bundle.tar
因为下载的是 rpm包,所以就舍去了解压的步骤(所以 不需要执行解压 z 操作)
这 4 个安装包通过 Xtfp 复制到 /opt/mysql下:
- 使用 rpm 命令
按顺序依次安装 4 个包:
rpm -ivh mysql-community-common-5.7.16-1.el7.x86_64.rpm rpm
-ivh mysql-community-libs-5.7.16-1.el7.x86_64.rpm rpm
-ivh mysql-community-client-5.7.16-1.el7.x86_64.rpm rpm
-ivh mysql-community-server-5.7.16-1.el7.x86_64.rpm
- 使用如下命令查看
mysqladmin --version # 查看MySQL版本号
- 运行 systemctl start mysqld.service ,启动mysql
systemctl start mysqld.service # 启动MySQL
- 然后开始设置 root 用户密码,
MySQL 会自动给root用户设置随机密码,运行grep "password" /var/log/mysqld.log 可查看到当前密码
- 运行 mysql -u root -p ,用 root 用户登录,提示输入密码可用上述的临时密码,可以成功登录进入mysql命令行
- 设置 root密码,对于个人开发环境,如果要设置比较简单的密码(生产环境服务器要设置复杂密码),可以运行如下提示代码设置策略
set global validate_password_policy=0; # 设置密码策略
validate_password_policy默认值是1- mysql 密码复杂度要求分三种
-
- 0 or LOW: 只要求长度(默认8位)
- 1 or MEDIUM: 中等,要求长度、大小写、特殊字符
- 2 or STRONG: 要求长度、大小写、特殊字符、字典文件
接下来设置密码:
# 设置用户密码为 kaf
set password for 'root'@'localhost'=password('kaf');
flush privileges; # 如果不运行该语句的话,密码将无法生效
最后运行 flush privileges; 使密码生效
这样就修改好密码了,我们可以使用 quit 退出mysql,然后重新登录
第一种方式:mysql -u root -p
第二种方式:mysql -u root -pkaf
这样我们的mysql就安装完成。!!
1.4、在服务器运行SpringBoot项目
我们在 Windows 下开发的SpringBoot项目最终可以通过Maven的Package打包成一个 jar 包,我们使用 xftp 将此 jar 包上传至服务器,然后执行 java -jar jar包名称。这样我们的项目就发布在服务器上了,访问也很简单。Linuxip:端口号 即可访问。
- 需要注意的是在访问之前我们要确保服务器的端口号是打开的状态
# 查看防火墙规则
firewall-cmd --list-all # 查看全部信息
firewall-cmd --list-ports # 只看端口信息
CREATE DATABASE bigcreation DEFAULT CHARACTER SET utf8;
quit
mysql -u root -p'qxl666nb' --default-character-set=utf8 bigcreation < /usr/local/bigcreation.sql 1.5、
1.5、在服务器运行SSM项目
- 首先将SSM项目的数据库文件导入
- 在服务器登录Mysql
mysql -u root -p
- 创建SSM项目连接的数据库名
create database 数据库名 default character set utf8;
show databases;
- 将sql文件导入
use 数据库名;
source 我们将sql文件放入服务器的路径;
例如我的就是:
use bigcreation;
source /usr/local/BCreation/bigcreation.sql;
- Maven的package可以将SSM项目打包成war包,在target目录下,我们将war包传入服务器tomcat中的webapps下
- 启动tomcat
cd tomcat的bin目录;
./startup.sh;
例如我的就是
cd /opt/tomcat/apache-tomcat-9.0.56/bin;
./startup.sh;
- 访问路径为:Linuxip:端口号/项目名称,例如我的就是
49.232.28.14:8080/B