Centos8部署jdk、mysql8、tomcat,并部署项目到tomcat中
- Linux系统的学习与使用(Centos8)
- Linux系统的介绍
- 目录结构
- 使Linux系统能够联网(登录root用户)
- 常用命令
- 安装JDK
- 安装MYSQL8
- 去官网下载对应的mysql8版
- 将其复制到linux系统的/usr/local/tmp目录下并解压
- 将解压后的mysql文件夹复制到/usr/local目录中,并重命名文件夹为mysql
- 进入到mysql目录,创建my.cnf文件,修改并保存
- 将该my.cnf复制一份到/etc/目录下,因为mysql8启动时会在该目录找配置文件
- 添加mysql的用户组及用户,并授权
- 执行命令初始化mysql,并查看初始密码
- 创建软连接
- 将mysql注册成服务,使其可以通过service|systemctl命令控制
- 设置mysql开启自启动并启动mysql服务
- 为mysql添加软连接,使得任何路径下都能使用mysql命令
- 登录mysql(这里的密码是前面初始化mysql时那一步时创建的随机密码),并重新设置root密码,以及开启远程访问
- 安装Tomcat
- 部署项目到Linux的tomcat中
Linux系统的学习与使用(Centos8)
Linux系统的介绍
Linux不是一个具体的操作系统,而是一类操作系统的统称。具体的版本称之为发行版。发行版一般有如下几个
- Red Hat :红帽,目前被IBM收购了。收费版。是目前全球最大的Linux供应商
- CentOs:Red Hat推出的免费版的Linux操作系统
- Ubuntu:图形化页面比较友好的Linux操作系统(免费)
为什么要选择Linux作为服务器运行的操作系统
- 开源免费
- 听说10年不关机依然可以正常运行
- 比Windows更加的安全
目录结构
Linux不同于Windws硬盘进行了分区,分为c盘,d盘等等。
可以理解为Linux只有一个分区。所有的文件都存放在该分区中。
ect 存放配置文件,可以想想一下windows的环境变量
bin 可执行文件,我们输入的命令,例如cd,ls等都存放在该目录
usr/local 相当于Windows安装东西等的默认安装目录
var 存放一些临时文件
home 除了root用户外,其他用户都会在该目录下有一个同名文件夹。对应的用户对其文件夹有完整的权限
root 只有root用户能够操作的目录
使Linux系统能够联网(登录root用户)
- 编辑该网卡配置,开启该网卡
vi /etc/sysconfig/network-scripts/ifcfg-ens33

- 重启该网卡
nmcli c reload ens33
常用命令
cd命令(用于进入到某个目录)
cd ./aa/ 进入到当前目录下的aa文件夹
cd ../bb/ 进入上一级目录下的bb文件夹
cd /home 进入根目录下的home目录
ls、ll命令 (查看某目录下的文件和文件夹)
ls 查看目录下的文件及文件夹。不显示详细信息,只显示名称。
ls -a 功能同上,但是会显示隐藏的文件或文件夹
ll 查看当前目录下的文件及文件夹。显示详细信息。
clear命令(清屏)
clear 清屏
pwd命令(获取当前所在目录)
pwd 执行后会在控制台输出你当前所在的目录
mkdir 命令(创建目录)
mkdir ./aa 在当前目录创建一个aa文件夹
mkdir /home/dqx/bb 在根路径的home目录下的dqx目录下创建一个bb文件夹
特别提示:mkdir 命令如果没有加参数,则只能创建一级的文件夹,如果要在bb目录下创建aa,那么bb则必须先存在。所以有如下指令。
mkdir -p /home/dqx/aa/bb 会创建bb目录。但是如果aa目录或者dqx目录等前面的目录不存在,则会一同创建
rm命令(删除文件或目录)
rm aa.txt 删除当前目录下的aa.txt文件
rm -r /home/dqx/aa 删除 根路径下的 home目录下的dqx目录下的aa文件夹,及其里面的文件或子文件夹。会出现需要确认的提示
rm -rf /home/dqx/aa 功能同上,但是不会提示是否需要删除。
touch 命令(创建文件)
touch a.txt 在当前目录下创建一个文件
vi/vim命令(文本编辑)
vi a.txt 会编辑当前目录下的a.txt文件
按下ESC则进入命令状态
命令状态下按i,看到左下角有insert,则进入输入状态。
命令状态下按 :q 退出当前编辑,(未改动的情况下)
命令状态下按 :wq 写入并退出
命令状态下按 :wq! 强制写入并退出
命令状态下按 dd 会删除光标所在的行
命令状态下按 d + 行号 + enter 会删除指定行号的行
使用vi或者vim命令操作文件时,有时候会出现有临时文件,可以根据需求对临时文件进行操作。例如删除临时文件(在弹出有临时文件的提示时按D),也可以手动rm -rf xxxx.swap临时文件
cat命令(查看数据)
cat a.txt 查看当前目录下a.txt文件的内容
tail命令(查看指定条目数据)
tail a.txt 查看当前目录下a.txt文件的最后10行内容
tail -5 a.txt 查看当前目录下a.txt文件的最后5行内容
tail -f a.txt 动态查看a.txt文件,如果该文件修改,那么我们看到的数据也会修改
mv命令(剪切)
mv 需要移动的文件 目的文件
mv ./a.txt /home/dqx/b.txt 将当前目录下的a.txt文件剪切到根目录下的home目录 下的dqx目录下,并且重命名为b.txt
(注意了,必须要写移动后的文件名)
cp命令(复制)
cp ./a.txt /home/dqx 将当前目录下的a.txt文件复制到/home/dqx文件目录下(可以不用指定复制后的文件名)
cp ./a.txt /home/dqx/b.txt 也可以指定文件名
cp -r ./aa ./bb/ 将aa文件夹复制到bb文件夹中
tar(解压压缩文件)
tar -zxvf 压缩文件
解压 .tar.gz 以及 .tar文件
z:是否具有gzip文件格式,也就是扩展名是否为.tar.gz
x:解压内容
v:是否显示解压过程
f:写到最后,然后紧跟需要被解压的文件
ps命令(查询进程)
ps -ef|grep mysql 查询mysql的全部进程
ps -aux|grep mysql 显示所有包含其他使用者的mysql进程
-e 显示所有进程,环境变量
-f 全格式
kill(杀死进程)
kill -9 进程号 ,-9代表强制删除,无论是否在运行
service命令(主要用于操作系统服务)
service 服务名 start|stop|status|restart
service firewalld stop // 关闭防火墙
systemctl命令(系统控制)
systemctl disable firewalld // 关闭防火墙开机自动启动
systemctl enable firewalld // 与上相反
安装JDK
将下载好的压缩版的linux版本的JDK下载到/usr/local/tmp文件夹下
tmp文件夹是自己创建的

使用tar -zxf命令解压该压缩包

将解压后的文件夹复制到/usr/local目录下,并命名为jdk

为jdk配置环境变量,/etc/profile
- 打开配置环境变量的文件
vim /etc/profile

保存退出。 - 重新解析该配置文件
source /etc/profile
java环境测试是否安装成功
如若以下三个命令都能找到指令,则代表jdk环境配置好了
java -version
javac
java
安装MYSQL8
去官网下载对应的mysql8版
将其复制到linux系统的/usr/local/tmp目录下并解压

将解压后的mysql文件夹复制到/usr/local目录中,并重命名文件夹为mysql

进入到mysql目录,创建my.cnf文件,修改并保存
cd /usr/local/mysql
vim my.cnf
# my.cnf文件配置如下,请自行按照需求更改
[mysqld]
# 端口
port=3306
# 基础mysql路径
basedir=/usr/local/mysql/
# mysql的数据存储路径
datadir=/usr/local/mysql/data/
# 出现错误的日志文件路径
log-error=/usr/local/mysql/data/error.log
# mysql以socket方式运行的sock文件位置
socket=/tmp/mysql.sock
# 进程id文件的位置
pid-file=/usr/local/mysql/data/mysql.pid
# 服务器使用的字符集
character-set-server=utf8mb4
# 使表名不区分大小写,如果为0则区分
lower_case_table_names=1
# innodb日志大小
innodb_log_file_size=1G
# 默认使用的引擎
default-storage-engine=INNODB
# 默认使用的验证插件
default_authentication_plugin=mysql_native_password
[mysql]
default-character-set=utf8mb4
[client]
# 端口号
port=3306
# 客户端默认字符集
default-character-set=utf8mb4
将该my.cnf复制一份到/etc/目录下,因为mysql8启动时会在该目录找配置文件
cp /usr/local/mysql/my.cnf /etc/
添加mysql的用户组及用户,并授权
# 创建用户组,名为mysql
groupadd mysql
# 创建一个用户 -r代表创建系统用户, -g代表指定用户组,所以用户名为mysql,所属的用户组也是mysql
useradd -r -g mysql mysql
# 将mysql目录的所有者设置为mysql用户,所属的组设置为mysql组
chown -R mysql:mysql /usr/local/mysql/

执行命令初始化mysql,并查看初始密码
# 初始化mysql数据
/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
# 查看初始化密码
cat /usr/local/mysql/data/error.log

创建软连接
# 创建的原因是因为mysql使用的libtinfo.so是5的,而centos默认是使用6的,所以要替换成5
# 创建一个软连接/usr/lib64/libtinfo.so.5 ,指向/usr/lib64/libtinfo.so.6
ln -s /usr/lib64/libtinfo.so.6 /usr/lib64/libtinfo.so.5
ln -s /usr/lib64/libncurses.so.6 /usr/lib64/libncurses.so.5
将mysql注册成服务,使其可以通过service|systemctl命令控制
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

设置mysql开启自启动并启动mysql服务
# 设置开机自启动
systemctl enable mysql
# 启动mysql服务
service mysql start


为mysql添加软连接,使得任何路径下都能使用mysql命令
ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
登录mysql(这里的密码是前面初始化mysql时那一步时创建的随机密码),并重新设置root密码,以及开启远程访问

修改当前root密码

创建一个所有ip都能访问的root用户,并授予所有权限
# 创建一个root用户,%代表所有ip都可访问
create user 'root'@'%' identified by 'root';
# 为该用户赋予所有权限,并且使其也可以赋予权限给其他用户
grant all privileges on *.* to 'root'@'%' with grant option;
# 刷新权限
flush privileges;
使用navicat测试连接

安装Tomcat
下载Linux版的tomcat
将下载下来的文件放入linux系统的/usr/local/tmp目录下,然后执行如下操作
# 进入该目录
cd /usr/local/tmp/
# 解压,这个压缩包的名称按照你下载的来
tar -zxf apache-tomcat-8.5.69.tar.gz
# 将其复制到/usr/local目录下,并重命名为tomcat
cp -r apache-tomcat-8.5.69 /usr/local/tomcat
进入tomcat的bin目录,开启tomcat服务
# 进入目录
cd /usr/local/tomcat/bin
# 开启tomcat
./startup.sh
# 关闭tomcat
./shutdown.sh
部署项目到Linux的tomcat中
首先将我们的项目打包成war包
war包本质上就是tomcat可以识别的一个压缩包。与jar无异。
将该war包放入tomcat服务器的webapps目录下

启动tomcat
/usr/local/tomcat/bin/startup.sh
查看tomcat错误日志
如果将war包放入tomcat的webapps目录下,然后启动tomcat无法正常访问。可以看看tomcat的日志
tomcat的日志在tomcat安装根路径下的logs文件夹目录中。其中有一个catalina.out的文件,查看该文件即可看到tomcat的启动日志信息。
Centos8部署jdk、mysql8、tomcat,并部署项目到tomcat中的更多相关文章
- RedHat Linux 5.5安装JDK+Tomcat并部署Java项目
与大家分享下RedHat Linux 5.5安装JDK+Tomcat并部署Java项目的步骤,希望对大家有用. 1.下载并安装jdk 虚拟机中安装RedHat Linux 5.5 64位企业版, 这里 ...
- Linux安装JDK,Tomcat,Mysql+部署项目
安装VMWare虚拟机 下载地址(http://www.onlinedown.net/soft/2062.htm) 安装步骤很简单(除了选择安装路径),傻瓜式安装 同意协议 选择安装路径 安装 完成 ...
- Linux(Centos)之安装tomcat并且部署Java Web项目
1.准备工作 a.下载tomcat linux的包,地址:http://tomcat.apache.org/download-80.cgi,我们下载的版本是8.0,下载方式如图: b ...
- 【tomcat 无法部署】svn上下载的maven项目无法部署到tomcat中
问题: svn上下载的maven项目无法部署到tomcat中,tomcat不识别项目,但是这个项目确实是web项目 发现的过程: 然后依次产看项目的编译版本: 项目的依赖架包: 才发现: 解决方法: ...
- 在Tomcat下部署web项目
每个web项目可以以两种方式存在,如联合风控项目,Urc.war,另一中是Urc解压后的目录结构.而tomcat目录下的\webapps\下则均是要部署的web项目解压后的文件夹,启动tomcat后, ...
- Linux(Centos)之安装tomcat并且部署Java Web项目(转)
1.准备工作 a.下载tomcat linux的包,地址:http://tomcat.apache.org/download-80.cgi,我们下载的版本是8.0,下载方式如图: b ...
- IDEA第二章----配置git、tomcat(热部署)、database,让你的项目跑起来
第一节:下载git客户端,整合idea 由于博主公司用的git版本管理,所以本系列都是基于git版本工具的,当然SVN与git配置类似.git同样支持安装版和解压版,支持各种操作系统,我这里下载的是W ...
- IDEA2017.3.3创建第一个javaweb项目及tomcat部署实战
一.创建简单web项目 1. 选择jdk(这里有点小问题不是很理解,通过java -verbose查找出来的jdk路径在C盘,这里并不能识别,而我jdk安装的时候有自己的路径在D盘,导入后就是图中的j ...
- IntelliJ IDEA打包WAR并部署运行(mac osx)将Web项目War包部署到Tomcat服务器基本步骤(完整版)
用IntelliJ IDEA做web开发体验很好,但导出war包比eclipse麻烦了不少,以下是解决方案: 打包:1.自动打包:File —> Project Structure —> ...
随机推荐
- 手摸手,带你用Beego撸商城系列二(登录篇)
完整项目地址: go-shop-b2c 系列文章: 手摸手,带你用 Beego撸商城 系列一(基础篇) 手摸手,带你用 Beego撸商城 系列二(登录篇) 手摸手,带你用 Beego撸商城 系列三(系 ...
- 为Centos系统打补丁
4.1.操作系统打补丁: 1.centos更新说明: centos 官方没有发布关于centos操作系统的补丁. centos 操作系统更新可以参考如下建议. 2.更新操作系统软件包,操作系统版本.内 ...
- Gym 101334A Area 51 数学
大致题意: 给出n个建筑的二维坐标,每个建筑名称为一个字母,不同坐标的建筑可以有同一名称,并保证这些坐标都是在y轴上半轴.给出一串建筑名称的字符串,在X轴上找出一个或多个区间,使Nick在这个区间上从 ...
- Linux指令手册 (一)
指令格式 指令主体 [选项] [操作对象] 一个完整的指令是由"指令主体"."选项"和"操作对象"组成的,其中指令主体只能有一个,选项有零个 ...
- Postgresql常见操作命令
安装Postgresql 请查看我的另一篇博文: 博文连接:https://www.cnblogs.com/cndevops/p/14962745.html 连接Postgresql数据库 服务端连接 ...
- AcWing 341. 最优贸易
C国有 n 个大城市和 m 条道路,每条道路连接这 n 个城市中的某两个城市. 任意两个城市之间最多只有一条道路直接相连. 这 m 条道路中有一部分为单向通行的道路,一部分为双向通行的道路,双向通行的 ...
- Nginx:Nginx动静分离
1.什么是动静分离 将动态请求和静态请求区分访问 2.为什么要做动静分离 tomcat本身处理静态效率不高,还会带来资源开销.所以使用动静分离,将静态由Nginx处理, 动态由PHP处理或Tomcat ...
- 第二届 BJD wp(reverse和crypto)
re 1.第一题拖入ida,flag就是直接明文摆着 2.第二题是8086的程序,拖入ida,发现有个jmp无限跳转,可能是段寄存器被修改了,ida无法将后面的汇编识别出来,所以后面才有很多无效数据, ...
- XCTF Normal_RSA
这题本来算是很常规的rsa了,下载附件 发现有个公钥文件,还有一个加密文件,这种题之前有遇到一次,做法和这个类似,上次那个是用rsa的库,直接解的,这次直接用常规的,好像更简单,记录下模板 记事本打开 ...
- Charles使用笔记001
一.抓电脑的请求 Proxy-->勾选Windows Proxy 二.Charles 拦截原理 三.Charles 拦截修改数据 选择一个链接-->右键-->勾选Breakpoint ...

