前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >本章目标: 将SSM项目及数据库完整的部署CentOS7

本章目标: 将SSM项目及数据库完整的部署CentOS7

作者头像
用户10196776
发布2022-11-22 15:43:08
5870
发布2022-11-22 15:43:08
举报

 jdk1.8+tomcat8.5+mysql5.7

🙃🙃1. 上传及下载文件    1.1 安装及使用lrzsz    1.2 上传: rz

   1.3 下载: sz 文件名

🙃🙃2. 上传jdk和tomcat的安装文件到指定文件夹  mkdir /usr/local/mytools 

 🎃🎃  注1:安装见资料 apache-tomcat-8.5.20.tar.gz         jdk-8u151-linux-x64.tar.gz

🙃🙃3. linux压缩和解压命令  tar压缩命令    tar压缩命令为 tar -zcvf  压缩名.tar.gz 文件/目录    tar解压命令为 tar -zxvf 压缩包名          tar -zxf  压缩包名 //静默解压方式    zip文件            zip压缩命令 zip -q -r 压缩包名.zip 目录/文件名                zip -r xxx.zip ./*    zip解压命令 unzip filename.zip

🙃🙃4. linux中JDK的安装与配置

   🍓🍓🍓🍓1.解压JDK压缩包  cd /usr/local/mytools  tar -zxvf jdk-8u151-linux-x64.tar.gz -C /usr/local                          解压到指定文件夹     🎃🎃 注1:在解压的时候 -C 是解压到指定目录中,一定要加-C参数,而且区分大小写的,-_- 555555555555555,“很痛的很痛的很痛的领悟”      🎃🎃注2:&&可将多条命令合成一行 cd /usr/local/mytools && tar -zxvf jdk-8u151-linux-x64.tar.gz -C /usr/local

   🍓🍓🍓🍓2.配置JDK环境变量

代码语言:javascript
复制
 vim /etc/profile
     #打开配置文件并在文件的最后添加如下内容(注意:=两边没有空格)
     #java environment
     export JAVA_HOME=请修改JDK解压路径
     export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
     export PATH=$PATH:${JAVA_HOME}/bin

  🍓🍓 🍓🍓3.设置环境变量生效

代码语言:javascript
复制
     source /etc/profile

   🍓🍓🍓🍓4.查看环境变量是否配置成功  java -version 🍓🍓🍓🍓5. tomcat安装与配置    1.解压tomcat到指定路径    tar -zxvf apache-tomcat-8.5.20.tar.gz -C /usr/local 

   2.解压完成后进入tomcat的bin目录  cd /usr/local/apache-tomcat-8.5.20/bin

   3.启动或关闭tomcat  cd /usr/local/apache-tomcat-8.5.20/bin      ./startup.sh      ./shutdown.sh

     🎃🎃注1:如何查看远程服务器的日志           cd /usr/local/apache-tomcat-8.5.20/logs           tail -f catalina.out                    #实时查看日志文件           tail -100f catalina.out              #实时查看日志文件后一百行  🎃🎃  注2:tomcat启动后,外部浏览器无法访问,原因:防火墙中8080端口未开放,           防火墙的开启详情见:附录二          ESC服务器-安全组规则    🎃🎃  注3:查看tomcat启动进程以及使用如何强制杀掉进程:           ps -ef|grep java           kill -9 进程PID     --以上步骤完成后,还是无法发布项目的 4.添加管理员、密码、权限       cd /usr/local/apache-tomcat-8.5.20/conf         vim tomcat-users.xml     然后在<tomcat-users>标签中插入以下内容(即添加管理员、密码、权限)   <role rolename="manager-gui"/>        <user username="admin" password="1234" roles="manager-gui"/>

    🍓🍓5.允许admin远程访问tomcat       此步骤完成后manager应用仍然会拒绝访问,因为tomcat8.5以后在manager应用中,默认只允许本机访问       具体请参考资料《Linux安装Tomcat,解决不能访问Manager App - zhoong - 博客园》

    🍓🍓🍓🍓5.1.将tomcat端口号port="8080"改为80

代码语言:javascript
复制
 cd /usr/local/java/apache-tomcat-8.5.20/conf
      vim server.xml
      <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />

   🍓🍓🍓🍓 5.2重启tomcat,使修改生效(先停止再启动)

代码语言:javascript
复制
/usr/local/apache-tomcat-8.5.20/bin
      ./shutdown.sh
      ./startup.sh

    🍓🍓🍓🍓5.3通过admin用户远程发布web项目,例如:hello.war

🍓🍓🍓🍓9.Centos7下设置Tomcat开机自启动   1.systemctl命令 查看全部服务命令:systemctl list-unit-files --type service      ctrl+c可以回到命令输入     查看服务:systemctl status 服务名.service     启动服务:systemctl start 服务名.service     停止服务:systemctl stop 服务名.service     重启服务:systemctl restart 服务名.service     增加开机启动:systemctl enable 服务名.service     删除开机启动:systemctl disable 服务名.service     注1:后缀.service可以省略    2.tomcat自启动   cd /usr/lib/systemd/system     vi tomcat.service     将资料中的tomcat.service中的内容复制进来,并修改tomcat和jdk的路径(重要!重要!重要!) systemctl enable tomcat       systemctl daemon-reload     systemclt start/status/stop/restart tomcat     #配置防火墙   firewall-cmd --zone=public --add-port=8081/tcp --permanent                 &&     firewall-cmd --reload &&     firewall-cmd --list-ports     #重启虚拟机 reboot或者shutdown -r now

🎃🎃🎃🎃7. 安装MYSQL5.7.30

1.官网下载MySQL5.7.30的RPM安装包

   2.卸载CentOS7系统自带的mariadb   

代码语言:javascript
复制
 #先检查有没有安装mariadb 
     rpm -qa|grep mariadb
     #我有个mariadb-libs-5.5.56-2.el7.x86_64,把它给卸载了 
     #mariadb-libs-5.5.56-2.el7.x86_64
     rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64
     #再次查看,mariadb已删除
     rpm -qa|grep mariadb

   3.安装libaio、perl、net-tools库,要不就会报错 balabala...   yum -y install libaio perl net-tools

   4.rz上传安装包到/usr/local/mytools

   5.建个目录并将安装文件解压到此目录     

代码语言:javascript
复制
mkdir /usr/local/mysql-5.7.30
     cd /usr/local/mytools 
     tar -xvf mysql-5.7.30-1.el7.x86_64.rpm-bundle.tar -C /usr/local/mysql-5.7.30

   6.进入目录准备安装      cd /usr/local/mysql-5.7.30      #开始安装,-ivh 其中i表示安装,v表示显示安装过程,h表示显示进度

代码语言:javascript
复制
 rpm -ivh mysql-community-common-5.7.30-1.el7.x86_64.rpm
     rpm -ivh mysql-community-libs-5.7.30-1.el7.x86_64.rpm
     rpm -ivh mysql-community-client-5.7.30-1.el7.x86_64.rpm
     rpm -ivh mysql-community-server-5.7.30-1.el7.x86_64.rpm

   7.启动mysqld服务  systemctl start mysqld

🍓🍓 注1:安装完成后的服务名叫mysqld systemctl start mysqld    8.登录mysql修改密码

代码语言:javascript
复制
 #查询生成的临时密码
     grep "password" /var/log/mysqld.log
     #登录mysql
     mysql -u root -p 
     #因为是本地测试环境,所以想把密码改的简单点
     #查看mysql初始的密码策略:
     SHOW VARIABLES LIKE 'validate_password%';
     #设置密码校验策略(0 or LOW),要不密码太LOW不让你过
     set global validate_password_policy=0;
     #设置密码校验长度,要不密码太短不让你过(多次测试发现密码最小长度为4位)
     set global validate_password_length=4;
     #更新密码
     set password = password("1234");
     #输入后使修改生效还需要下面的语句
     FLUSH PRIVILEGES;
     #可以退出,试试用新密码重新登录
     exit

   9.修改mysql的字符集为utf8

代码语言:javascript
复制
 #登陆mysql之后,可以通过如下命令查看mysql的字符集
     show variables like 'chara%';
     quit;
     #以下命令为linux命令
     #修改配置文件设置 MySQL 字符集为 UTF-8
     vi /etc/my.cnf
     
     [mysqld]
     #在mysqld最下面加入二行代码
     character-set-server=utf8 
     collation-server=utf8_general_ci
     
     #client为自己添加
     [client]  
     default-character-set=utf8

  10.Centos7下无法远程连接mysql数据库      1.数据库没有授权,允许以root身份远程登录mysql  GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '1234' WITH GRANT OPTION;        #输入后使修改生效还需要下面的语句        FLUSH PRIVILEGES;      2.服务器防火墙没有开放3306端口 

代码语言:javascript
复制
 firewall-cmd --zone=public --add-port=3306/tcp --permanent &&
       firewall-cmd --reload &&
       firewall-cmd --list-port &&
       firewall-cmd --query-port=3306/tcp

2. mysql数据库数据导出/导入  Navicat导出表结构及少量数据 3. ssh2项目部署到CentOS7的tomcat    通过8080访问

   注1:重启虚拟机后,发现有时候linux中的tomcat启动失败,应该将tomcat服务在mysql服务启动后启动。重要    注2:可将WEB项目部署到不同的tomcat中,可做集群测试

 4. CentOS7中使用yum安装Nginx的方法

   1.添加 nginx 官方提供的 yum 源(需要联网且时间较长)  rpm -Uvh http://nginx.org/packages/centos/7/x86_64/RPMS/nginx-1.14.2-1.el7_4.ngx.x86_64.rpm    2.使用 yum 安装 nginx      yum install nginx      注1:yum方式安装nginx,它的安装根目录为/etc/nginx      注2:查看nginx版本           rpm -qa | grep nginx    3.启动及设置开机启动  systemctl start nginx.service      systemctl enable nginx.service    4.设置防火墙开放 80 端口      firewall-cmd --zone=public --add-port=80/tcp --permanent      firewall-cmd --reload && firewall-cmd --list-port    5.测试 nginx 是否可被访问,应该显示nginx的欢迎界面      http://192.168.183.144:80

5. 将SPA项目压缩并上传到/usr/nginx/html目录,再解压 mkdir /usr/nginx/html    unzip crm.zip    #重启nginx

   #重新修改window中的hosts文件

 注1:通过虚拟域名访问,还要修改window的hosts文件添加虚拟域名映射,文件位置如下:            C:\Windows\System32\drivers\etc\hosts            另外,此文件有可能出现由于当前用户权限不够,出现无法修改的情况?解决方案            将此文件复制到d硬盘任一目录,修改后,再复制替换C:\Windows\System32\drivers\etc\hosts原文件  

5.通过nginx对tomcat进行集群及代理   #进入conf.d目录,并对default.conf进行备份 cd /etc/nginx/conf.d && cp default.conf default.conf.bak 

  #修改default.conf,添加tomcat集群和动态代理配置 systemctl restart nginx && systemctl status nginx    注1:查看nginx的访问日志和错误日志 /var/log/nginx/access.log        /var/log/nginx/error.log 

  注2:查看nginx版本  rpm -qa | grep nginx

1.CentOS7安装mysql三种方式   1.yum   2.tar.gz   3.*.deb安装包

🍓🍓🍓🍓附录一:CentOS7防火墙查询、启动和关闭

CentOS 7.0默认使用的是firewall作为防火墙 1.查看防火墙状态   firewall-cmd --state 2.停止firewall   systemctl stop firewalld.service 3.禁止firewall开机启动   systemctl disable firewalld.service 

🍓🍓🍓🍓附录二:CentOS 7快速开放端口 

CentOS7防火墙firewalld默认是开启的,下面记录如何使用firewalld开放Linux端口: 开启端口 firewall-cmd --zone=public --add-port=8080/tcp --permanent 删除指定端口 firewall-cmd --zone=public --remove-port=8080/tcp --permanent 查询指定端口号是否开启: firewall-cmd --query-port=8080/tcp 重启防火墙(不重启以上的设置是不会生效的): firewall-cmd --reload 查询有哪些端口是开启的: firewall-cmd --list-port 命令含义: --zone #作用域 --add-port=8080/tcp #添加端口,格式为:端口/通讯协议 --permanent #永久生效,没有此参数重启后失效

🍓🍓🍓🍓附录三:SSH小简介

1. SSH是什么?    ssh是一种安全协议,主要用于给远程登录会话数据进行加密,保证数据传输的安全 2. SSH分为客户端和服务端。    服务端是一个守护进程,一般是sshd进程,在后台运行并响应来自客户端的请求。提供了对远程请求的处理,一般包括公共密钥认证、密钥交换、对称密钥加密和非安全连接 3. 工作机制   3.1 客户端发送一个连接请求到远程服务端   3.2 服务端检查申请的包和IP地址,再发送密钥给SSH客户端;   3.3 客户端再将密钥发回服务端,自此建立连接  

🍓🍓🍓🍓附录四: Linux 

Linux 软件安装到 /usr,/usr/local/ 还是 /opt 目录? 1. /usr:系统级的目录,可以理解为C:/Windows/,/usr/lib理解为C:/Windows/System32。 2. /usr/local:用户级的程序目录,可以理解为C:/Progrem Files/。用户自己编译的软件默认会安装到这个目录下。 3. /opt:用户级的程序目录,可以理解为D:/Software,opt有可选的意思,这里可以用于放置第三方大型软件(或游戏),当你不需要时,直接rm -rf掉即可。         在硬盘容量不够时,也可将/opt单独挂载到其他磁盘上使用。

🍓🍓🍓🍓附录五:linux 里rpm包到底是干什么用的

Linux RPM全称是“RedHat Package Manager”,最早是Red Hat公司开发的,后来在CentOS、Fedora、SUSE都用它。 而rpm包则是软件编译完成后按照RPM机制打包起来的一个文件,可以用rpm命令安装的一个软件安装包, 它省去了Linux软件安装中编译的步骤,安装成功后软件就可以用了。

🍓🍓🍓🍓附录六:centos7中虚拟域名设置 vim /etc/hosts

🍓🍓🍓🍓附录七:

将SSM项目及数据库完整的部署CentOS7上在进行Nginx+Tomcat 负载均衡的时候遇到了这个权限问题,在error.log日志中,我们可以看到如下: connect() to 127.0.0.1:8080 failed (13: Permission denied) while connecting to upstream 解决方案参考《解决Nginx的connect() to 127_0_0_18080 failed (13 Permission denied) while connect_Osheep-昔日暖阳-CSDN博客_connect() to 127_0_0_18080 failed (13 permission.mht》

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022-11-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  •  jdk1.8+tomcat8.5+mysql5.7
  • 🙃🙃1. 上传及下载文件    1.1 安装及使用lrzsz    1.2 上传: rz
  •    1.3 下载: sz 文件名
  • 🙃🙃2. 上传jdk和tomcat的安装文件到指定文件夹  mkdir /usr/local/mytools 
  •  🎃🎃  注1:安装见资料 apache-tomcat-8.5.20.tar.gz         jdk-8u151-linux-x64.tar.gz
  • 🙃🙃3. linux压缩和解压命令  tar压缩命令    tar压缩命令为 tar -zcvf  压缩名.tar.gz 文件/目录    tar解压命令为 tar -zxvf 压缩包名          tar -zxf  压缩包名 //静默解压方式    zip文件            zip压缩命令 zip -q -r 压缩包名.zip 目录/文件名                zip -r xxx.zip ./*    zip解压命令 unzip filename.zip
  • 🙃🙃4. linux中JDK的安装与配置
  •    🍓🍓🍓🍓1.解压JDK压缩包  cd /usr/local/mytools  tar -zxvf jdk-8u151-linux-x64.tar.gz -C /usr/local                          解压到指定文件夹     🎃🎃 注1:在解压的时候 -C 是解压到指定目录中,一定要加-C参数,而且区分大小写的,-_- 555555555555555,“很痛的很痛的很痛的领悟”      🎃🎃注2:&&可将多条命令合成一行 cd /usr/local/mytools && tar -zxvf jdk-8u151-linux-x64.tar.gz -C /usr/local
  •    🍓🍓🍓🍓2.配置JDK环境变量
  •   🍓🍓 🍓🍓3.设置环境变量生效
  •    🍓🍓🍓🍓4.查看环境变量是否配置成功  java -version 🍓🍓🍓🍓5. tomcat安装与配置    1.解压tomcat到指定路径    tar -zxvf apache-tomcat-8.5.20.tar.gz -C /usr/local 
  •    2.解压完成后进入tomcat的bin目录  cd /usr/local/apache-tomcat-8.5.20/bin
  •    3.启动或关闭tomcat  cd /usr/local/apache-tomcat-8.5.20/bin      ./startup.sh      ./shutdown.sh
  •     🍓🍓5.允许admin远程访问tomcat       此步骤完成后manager应用仍然会拒绝访问,因为tomcat8.5以后在manager应用中,默认只允许本机访问       具体请参考资料《Linux安装Tomcat,解决不能访问Manager App - zhoong - 博客园》
  •     🍓🍓🍓🍓5.1.将tomcat端口号port="8080"改为80
  •    🍓🍓🍓🍓 5.2重启tomcat,使修改生效(先停止再启动)
  •     🍓🍓🍓🍓5.3通过admin用户远程发布web项目,例如:hello.war
  • 🎃🎃🎃🎃7. 安装MYSQL5.7.30
    • 1.官网下载MySQL5.7.30的RPM安装包
      •    2.卸载CentOS7系统自带的mariadb   
        •    3.安装libaio、perl、net-tools库,要不就会报错 balabala...   yum -y install libaio perl net-tools
          •    4.rz上传安装包到/usr/local/mytools
            •    5.建个目录并将安装文件解压到此目录     
              •    6.进入目录准备安装      cd /usr/local/mysql-5.7.30      #开始安装,-ivh 其中i表示安装,v表示显示安装过程,h表示显示进度
                •    7.启动mysqld服务  systemctl start mysqld
                  • 🍓🍓 注1:安装完成后的服务名叫mysqld systemctl start mysqld    8.登录mysql修改密码
                    •    9.修改mysql的字符集为utf8
                      •   10.Centos7下无法远程连接mysql数据库      1.数据库没有授权,允许以root身份远程登录mysql  GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '1234' WITH GRANT OPTION;        #输入后使修改生效还需要下面的语句        FLUSH PRIVILEGES;      2.服务器防火墙没有开放3306端口 
                        • 2. mysql数据库数据导出/导入  Navicat导出表结构及少量数据 3. ssh2项目部署到CentOS7的tomcat    通过8080访问
                        •  4. CentOS7中使用yum安装Nginx的方法
                          • 5. 将SPA项目压缩并上传到/usr/nginx/html目录,再解压 mkdir /usr/nginx/html    unzip crm.zip    #重启nginx
                          •    #重新修改window中的hosts文件
                            • 5.通过nginx对tomcat进行集群及代理   #进入conf.d目录,并对default.conf进行备份 cd /etc/nginx/conf.d && cp default.conf default.conf.bak 
                              •   #修改default.conf,添加tomcat集群和动态代理配置 systemctl restart nginx && systemctl status nginx    注1:查看nginx的访问日志和错误日志 /var/log/nginx/access.log        /var/log/nginx/error.log 
                                •   注2:查看nginx版本  rpm -qa | grep nginx
                                  • 1.CentOS7安装mysql三种方式   1.yum   2.tar.gz   3.*.deb安装包
                                  • 🍓🍓🍓🍓附录一:CentOS7防火墙查询、启动和关闭
                                  • 🍓🍓🍓🍓附录二:CentOS 7快速开放端口 
                                  • 🍓🍓🍓🍓附录三:SSH小简介
                                  • 🍓🍓🍓🍓附录四: Linux 
                                    • 🍓🍓🍓🍓附录五:linux 里rpm包到底是干什么用的
                                      • 🍓🍓🍓🍓附录六:centos7中虚拟域名设置 vim /etc/hosts
                                      • 🍓🍓🍓🍓附录七:
                                      相关产品与服务
                                      命令行工具
                                      腾讯云命令行工具 TCCLI 是管理腾讯云资源的统一工具。使用腾讯云命令行工具,您可以快速调用腾讯云 API 来管理您的腾讯云资源。此外,您还可以基于腾讯云的命令行工具来做自动化和脚本处理,以更多样的方式进行组合和重用。
                                      领券
                                      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档