Linux部署项目

12.部署项目1-本地软件安装命令rpm【理解】

目标

利用rpm可以直接安装rpm文件(rpm文件是本地可执行安装文件)

RPM介绍

RedHat Package Manager(RPM), 擅长安装本地的软件和没有依赖其他软件包的软件

rpm的作用

​ 查询已安装的软件

​ 安装软件

​ 卸载软件

rpm的语法

[外链图片转存失败(img-MySDObmx-1567135719054)(assets/)]

常用命令
rpm -qa #查询所有已安装软件
rpm -ivh 软件包  #安装指定的软件包
rpm -e --nodeps 软件包  #强制卸载指定软件包
小结
  • rpm的常用作用有哪些?

    查询已安装的软件

    进行安装软件

    卸载已安装的软件

13.部署项目2-jdk安装【应用】

疑问
  • linux上运行java代码是否需要安装jdk?

    必须安装。

实现步骤
  1. 将jdk软件上传到linux系统/soft目录下

    [外链图片转存失败(img-ZP2yAcqQ-1567135719055)(assets/)]

  2. 将jdk压缩文件解压到/usr/local

    tar -xvf jdk-9.0.4_linux-x64_bin.tar.gz -C /usr/local
    
  3. 配置linux的jdk环境变量,操作一个/etc/profile环境变量配置文件

    编辑配置文件配置环境变量

    vim /etc/profile
    

    在文件里面的末位添加如下配置

    #set java environment
    JAVA_HOME=/usr/local/jdk1.8.0_162
    CLASSPATH=.:$JAVA_HOME/lib
    PATH=$JAVA_HOME/bin:$PATH
    export JAVA_HOME CLASSPATH PATH
    
  4. 重载环境变量配置文件

    source /etc/profile
    

    查看jdk环境变量是否配置成功,如下信息说明成功

    [外链图片转存失败(img-juexZSzO-1567135719055)(assets/)]

小结
  • 环境变量的配置文件叫什么?

    /etc/profile

  • 修改过linux的环境变量文件需要注意什么?

    重新加载命令:source /etc/profile

14.部署项目3-mysql安装-启动-远程授权【应用】

疑问
  • 部署项目代码运行是否需要安装mysql数据库?那以后mysql数据库是安装到windows还是linux上?

    必须安装

安装实现步骤

[外链图片转存失败(img-Bx7JkMUs-1567135719056)(assets/)]

  1. 查看CentOS是否自带的MySQL,如果已经安装需要卸载。如果没有找到,则表示没有安装

    [外链图片转存失败(img-lxvtWrmo-1567135719056)(assets/)] 

  2. 在线获取CentOS7的mysql的rpm安装文件,直接执行如下命令:

    wget https://repo.mysql.com//mysql80-community-release-el7-1.noarch.rpm
    
  3. 执行安装命令

    rpm -ivh mysql80-community-release-el7-1.noarch.rpm
    
  4. 得到两个配置文件,进入/etc/yum.repos.d目录下查询

    cd /etc/yum.repos.d 
    

    [外链图片转存失败(img-i2NAXCNP-1567135719057)(assets/g)]

  5. 编辑mysql-community.repo文件,配置资源库下载版本选择

    vim mysql-community.repo
    

    [外链图片转存失败(img-SLkId1F7-1567135719057)(assets/)]

  6. 下载安装客户端、服务器端、工具包

    在线下载安装命令介绍:yum(全称为 Yellow dog Updater, Modified)作用:用于自动从服务器上下载相应的软件包,自动安装,并且自动下载它的依赖包。

    rpm,不仅可以安装本地软件,也可以在线下载安装,rpm只能安装指定的一个软件,然而linux的软件都依赖很多其他软件,rpm不会安装依赖软件,导致在线安装软件非常麻烦

    yum,不仅可以在线安装指定的一个软件并且会将依赖的所有软件都进行安装,非常方便

    [外链图片转存失败(img-xR6hsdOo-1567135719057)(assets/)]

    yum -y install mysql-community-client mysql-community-server mysql-community-devel
    

安装后的效果

[外链图片转存失败(img-IthCqWW9-1567135719058)(assets/)]

mysql服务启动
  1. 启动mysql服务

    systemctl start mysqld
    
  2. 将mysql加到系统服务中并设置开机启动

    systemctl enable mysqld
    
  3. 登录mysql,root用户默认没有密码

    mysql -uroot
    
  4. 在mysql中修改自己的密码

    set password = password('密码'); 
    
设置远程连接权限、开发端口号
  1. 开启mysql的远程登录权限,默认情况下mysql为安全起见,不支持远程登录mysql,所以需要设置开启,并且刷新权限缓存。远程登录mysql的权限登录mysql后输入如下命令

    grant all privileges on *.* to 'root'@'%' identified by 'root';
    flush privileges;
    
  2. 开放Linux的对外访问的端口3306

    #开放的端口永久保存到防火墙
    firewall-cmd --zone=public --add-port=3306/tcp --permanent
    
    #重启防火墙
    systemctl restart firewalld
    

windows主机mysql客户端就可以连接了,效果如下

[外链图片转存失败(img-OfeAJNWj-1567135719058)(assets/)]

小结
  • yum命令的作用是什么?

    在线下载软件包,并且自动安装,并且自动下载安装依赖的相关软件包

    rpm是本地安装

  • linux如何让远程访问mysql数据库服务器?

    1.在mysql里面授权远程访问

    2、linux防火墙放行3306端口

15.部署项目4-linux版本redis1-安装【应用】

目标

在linux系统上安装redis

实现步骤
  1. 上传软件

    [外链图片转存失败(img-fZticn2g-1567135719058)(assets/)]

  2. 安装软件

    • 解压redis压缩文件到/usr/local下面

    • 从官方下载linux版本redis是c语言源代码,需要下载编译器进行编译之后在安装,下载39M

      yum -y install gcc-c++ 
      
    • 编译redis源码并安装

      进入/usr/local/redis-3.2.11目录,执行make命令,用于编译c语言源代码

      make
      

      [外链图片转存失败(img-pwJ8cZVc-1567135719059)(assets/)]

      执行安装,必须在redis-3.2.11目录里面

      make PREFIX=/usr/local/redis install
      

      [外链图片转存失败(img-pJnCqhxK-1567135719060)(assets/)]

      安装好的目录结构

      [外链图片转存失败(img-gatKhjaR-1567135719060)(assets/)]

小结
  • 在linux版本的redis是使用什么语言开发?需要下载安装什么才能编译?

    使用c语言开发的,下载gcc-c++编译器来编译c语言。

16.部署项目5-linux版本redis2-启动与停止【应用】

目标

在linux系统上操作redis的启动与停止

启动
  1. 前端模式启动

    命令:./redis-server

    特点:霸占整个终端,导致无法运行其他命令

    [外链图片转存失败(img-WjEe3pPa-1567135719060)(assets/)]

  2. 后端启动(推荐后端启动)

    特点:后台运行,不影响运行其他命令

    实现步骤:

    • 执行Ctrl+C结束redis的服务器的运行

      [外链图片转存失败(img-2VufDF6C-1567135719061)(assets/)]

    • 将源代码目录中/usr/local/redis-3.2.11/redis.conf复制到当前安装bin目录下

      cp /usr/local/redis-3.2.11/redis.conf ./
      

      [外链图片转存失败(img-ktlmaa5I-1567135719062)(assets/)]

    • 修改redis.conf配置文件内容,让其支持后端启动(修改redis.conf文件)

      daemonize no
      

      修改后

      daemonize yes
      

      以后启动服务器端必须指明redis.conf进行启动

      ./redis-server redis.conf
      

      [外链图片转存失败(img-wmmckojU-1567135719062)(assets/)]

    • 启动客户端

      [外链图片转存失败(img-bYYavDZN-1567135719063)(assets/)]

停止
  1. 杀死进程方式

    kill -9  进程号
    

    特点:强制杀死进程,容易导致redis如果正在持久化就可能会失败数据丢失

    [外链图片转存失败(img-tqBB40Ak-1567135719063)(assets/)]

  2. 客户端发送关闭命令(推荐)

    ./redis-cli shutdown
    

    特点:如果正在持久化先会等持久化完成后再关闭服务器

    [外链图片转存失败(img-UeQQQS7a-1567135719063)(assets/)]

17.部署项目6-linux版本redis3-客户端远程连接

  1. 测试客户端是否可以远程连接到linux的redis

    [外链图片转存失败(img-BnMzZpJr-1567135719064)(assets/)]

  2. 无法连接,分析原因

    开放端口6379

    #临时立刻开放6379端口,重启防火墙或重启电脑就失效
    /sbin/iptables -I INPUT -p tcp --dport 6379 -j ACCEPT
    #开放的端口永久保存到防火墙,重启防火墙或重启电脑才会永久生效
    firewall-cmd --zone=public --add-port=6379/tcp --permanent
    

    redis在3.2.x版本以后进行了安全升级,默认只允许本地访问,不允许远程访问,这个安全设置在redis.conf中有配置,默认只允许本地127.0.0.1访问

    bind 127.0.0.1
    
  3. 解决实现步骤

    修改配置文件redis.conf,增加允许远程看可以连接这个ip访问redis,指定的ip是当前linux系统的ip(redis服务器的ip)

    bind 127.0.0.1 192.168.56.117
    

    [外链图片转存失败(img-iP5bmgRo-1567135719064)(assets/)]

    重启redis服务器

    [外链图片转存失败(img-BHevEWGi-1567135719064)(assets/)]

    [外链图片转存失败(img-tb7ENvOT-1567135719064)(assets/)]

18.部署项目7-tomcat安装【应用】

实现步骤
  1. 将软件上传到linux系统/soft目录下

  2. 解压压缩包到/usr/local目录下

    tar -xvf apache-tomcat-8.5.27.tar.gz  -C /usr/local/
    
  3. 进入bin目录,启动tomcat服务器

    ./startup.sh
    
  4. 开发linux系统防火墙8080端口

    firewall-cmd --zone=public --add-port=8080/tcp --permanent
    systemctl restart firewalld
    
  5. windows客户端使用浏览器访问linux的8080端口tomcat

    [外链图片转存失败(img-HX7s4bBn-1567135719065)(assets/)]

  6. 进入bin目录下,关闭服务器。关闭服务器以后,浏览器不能再访问

    [外链图片转存失败(img-xQJHjzFW-1567135719065)(assets/)]

小结
  • linux版本的tomcat的启动与关闭命令?

    startup.sh

    shutdown.sh

19.部署项目8-项目发布【应用】

目标

将javaweb项目部署到linux里面的tomcat上运行

实现步骤
  1. 在linux上的mysql准备数据库数据

    [外链图片转存失败(img-hxaf8tIk-1567135719066)(assets/)]

  2. 部署方式1:直接拷贝部署目录资源到服务器webapps目录下

    [外链图片转存失败(img-q92sUHVu-1567135719066)(assets/)]

    复制项目拖拽到linux系统tomcat/webapps目录下

    [外链图片转存失败(img-Nd8KRw6f-1567135719066)(assets/)]

    打开浏览器访问:

    [外链图片转存失败(img-sjzniMcY-1567135719066)(assets/)]

  3. 部署方式2(专业):将windows的javaweb项目导出war包再部署到linux系统tomcat/webapps目录下

    [外链图片转存失败(img-9c7A89NQ-1567135719066)(assets/)]

    [外链图片转存失败(img-PconeZ2t-1567135719067)(assets/)] 

    将war包的文件名字修改为contactSys.war

    [外链图片转存失败(img-vE6ftOzA-1567135719068)(assets/]

  4. 将war包部署到linux里面的tomcat里面的webapps里面

    [外链图片转存失败(img-w8Z6MEpJ-1567135719068)(assets/)]

  5. 浏览器访问

    [外链图片转存失败(img-hLWKgS5C-1567135719068)(assets/]

解决mysql底层乱码问题
  1. 修改jdbc.properties配置文件,设置mysql使用utf-8解码,添加“?characterEncoding=utf8”
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/itheima117?characterEncoding=utf8
username=root
password=root
poolMaximumActiveConnections=10
  1. 将当前项目需要重新打包,再部署到linux上tomcat的webapps里面

  2. 关闭tomcat,执行shutdown.sh

  3. 启动tomcat,执行startup.sh

小结
  • javaweb项目部署到linux会打包,打成什么格式的包?部署到哪里?

    war,部署到linux上的tomcat/webapps目录下

20.用户管理1-用户的管理【应用】

添加用户

[外链图片转存失败(img-IumX8tkS-1567135719069)(assets/)]

设置密码

[外链图片转存失败(img-632MgWjB-1567135719069)(assets/g)]

删除用户

[外链图片转存失败(img-QcztGbBu-1567135719069)(assets/)]

修改登录名

[外链图片转存失败(img-zsbIE8Op-1567135719070)(assets/)]

小结

[外链图片转存失败(img-udSpL5WE-1567135719070)(assets/)]

21.用户管理2-组与用户的管理【应用】

添加组

[外链图片转存失败(img-gI0NQTpe-1567135719070)(assets/)]

用户添加指定组

[外链图片转存失败(img-lsa7uDKY-1567135719071)(assets/)]

用户从指定组中删除

[外链图片转存失败(img-FT6uvQdG-1567135719071)(assets/)]

修改组名

[外链图片转存失败(img-RiRjvgkL-1567135719071)(assets/)]

删除组

[外链图片转存失败(img-MBlI62zB-1567135719072)(assets/)]

小结

[外链图片转存失败(img-QXjT4lo8-1567135719072)(assets/)]

21.用户管理3-给普通用户设置 sudo超级管理权限【应用】

[外链图片转存失败(img-wBEKx6ss-1567135719072)(assets/)]

22.总结

mumActiveConnections=10


2)    将当前项目需要重新打包,再部署到linux上tomcat的webapps里面

3)    关闭tomcat,执行shutdown.sh

4)    启动tomcat,执行startup.sh

##### 小结

* javaweb项目部署到linux会打包,打成什么格式的包?部署到哪里?

  war,部署到linux上的tomcat/webapps目录下


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值