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 —> ...
随机推荐
- Golang通过反射拼接一个结构体所有字段
golang通过反射拼接一个结构体所有字段 需求 将一个结构体所有字段以"|"连接拼接成字符串 golang 不同类型拼接成string使用Sprintf比较麻烦,如果一个结构体有 ...
- ECMAScript 2021 正式确认
ECMAScript 2021 主要包含内容: ECMAScript 2021 于2021年6月22日获得 ECMA International 的批准.ECMAScript 是标准化的 JavaSc ...
- 20204107 孙嘉临《Python程序设计》实验一报告
课程:<python程序设计> 班级:2041 姓名:孙嘉临 学号:20204107 实验教师:王志强 实验日期:2021年4月12日 必修/选修:公选课 ##一.实验内容 1.熟悉Pyt ...
- Kubernetes通过downwardAPI传递元数据
应用往往需要获取所运行环境的一些信息,包括应用自身以及集群中其他组件的信息.Kubernetes可以通过环境变量以及DNS进行服务发现,但其他信息如何处理呢?下面将介绍特定pod和容器元数据如何被传递 ...
- 4、git和gitlab的配置(2)
4.10.使用 gitlib 模拟开发流程: 1.项目经理指定开发计划: project01 需求 开发者 完成日期 v1.0 首页 dev01 4.28 支付 dev02 4.30 2.rpm(项目 ...
- json串向后台传递数值自动四舍五入的问题
业务需求:传递前台输入的数据,数量要求是小数点(多条数据) 后台服务是使用asp.net写的. 问题:反序列化JSON时总是自动四舍五入. 原因:JSON反序列化的时候数据类型是以第一条数据的类型为准 ...
- Java:Java多线程实现性能测试
创建多线程和线程池 import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import ...
- Nginx:Nginx动静分离
1.什么是动静分离 将动态请求和静态请求区分访问 2.为什么要做动静分离 tomcat本身处理静态效率不高,还会带来资源开销.所以使用动静分离,将静态由Nginx处理, 动态由PHP处理或Tomcat ...
- Https:Java代码设置使用证书访问Https
设置证书进行访问或被访问操作 String keyStore = "keyStore的文件路径": String KEY_STORE_PWD = "1234"; ...
- vsftp安装错误总结
1.vsftpd 530 Login incorrect 解决办法:将用户从/etc/vsftpd/ftpusers 中删除 参考:http://blog.51yip.com/linux/1672. ...