大数据------额外软件、插件及技术------Linux(完整知识点汇总)

Linxu

  • 不同领域的主流操作系统

    • 桌面操作系统
      • Windows
      • MAac OS
      • Linux
    • 服务器端操作系统
      • UNIX(付费)
      • Linux
      • Windows Server(付费)
    • 移动设备操作系统
      • Android(基于Linux开源)
      • IOS(不开源)
    • 嵌入式操作系统
      • Linux—如机顶盒等
  • Linxu系统版本

    • 内核版

      • 负责控制硬件
    • 发行版

      • 基于Linux内核版进行扩展,由各个Linux厂商给开发、维护
      • 有收费版和免费版

在这里插入图片描述

  • Linux系统安装方式

    • 物理机安装:直接将OS安装到服务器硬件上
    • 虚拟机安装:通过虚拟机软件安装,用虚拟机来模拟计算机硬件

    在这里插入图片描述

Linux发行版安装

  • 虚拟机VMWare安装(略)
    • 虚拟机安装直接跟着步骤一直下一步就可,中间除了安装位置外不用更改任何设置
    • 注意装完后最好不要卸载VMWare,否则可能需要重装系统

Linux安装步骤(使用CentOS镜像文件完成------阿里云镜像下载)

安装完成后重启即可

  • 安装步骤

    • 打开VMWare→创建新的虚拟机,然后按图示安装即可创建一个CentOS虚拟机

      在这里插入图片描述

      在这里插入图片描述

      在这里插入图片描述

      在这里插入图片描述

      在这里插入图片描述

      在这里插入图片描述

      在这里插入图片描述

      在这里插入图片描述

      在这里插入图片描述

      在这里插入图片描述

      在这里插入图片描述

      在这里插入图片描述

      在这里插入图片描述

      在这里插入图片描述

  • 安装完成后若无法开启虚拟机如图一所示,说明电脑的虚拟化被禁用 ,如图二所示(可在任务管理器中查看是否被禁用),此时则需要根据自己电脑的品牌及型号去查找如何开启虚拟化(该步骤省略)

    在这里插入图片描述

    在这里插入图片描述

  • 首次开启虚拟机并安装CentOS

    • 注意:光标进入到虚拟机后需要按Ctrl+Alt才能出来

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

桌面版Linux

桌面版重启后出现第一个界面直接回车即可

  • 安装完成后步骤

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

  • 第一次进入页面后,该用户是刚刚创建的用户(博主刚创建的账户名为cgrs572),需要将该用户注销(即退出),然后root用户登录,步骤如下:

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

桌面版Linux网络配置

  • VMware中的步骤

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

  • Windows中的步骤

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

  • 安装的Linux中的步骤

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    注意:若按以上步骤网络配置失败则将倒数第二张图片中的BOOTPROTO的参数改为dhcp即可完成网络配置(是否联网可通络打开Linux中的谷歌浏览器来研验证)

命令版Linux

桌面版重启后出现第一个界面直接回车即可

  • 安装完成后步骤

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

命令版Linux网络配置

  • 第一步:安装的Linux中的步骤

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

​ 从图中可看出虚拟机的IP地址为192.168.10.129

安装SSH(Secure Shell)连接工具

  • 定义

    • 它是建立在应用层基础上的安全协议,通过SSH连接工具可实现从本地连接到远程的Linux服务器

    • 常见的SSH连接工具:putty、secureCRT、xshell、finalshell(博主以finalshell为例)

  • 直接去官网下载finalshell安装包安装即可(安装过程中会弹出下载安装winpcap,直接安装并设置成开机启动即可)

  • 安装完成后打开finalshell,与远程Linux服务器建立连接步骤如图所示

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

  • 注意

    • 不论是连接桌面版Linux还是命令版Linux,都必须保证远程Linux服务器是开启的,且连接成功后finalshell界面都是一样的命令行界面,详见上图所示

Linux系统目录结构

  • Linux系统中的一切均为文件
  • Linux目录结构
    • Windows系统单击计算机开始都是C盘、D盘、E盘;而Linux单击计算机打开后均是一个一个的目录

在这里插入图片描述

在这里插入图片描述

  • Linux目录介绍

    在这里插入图片描述

    目录名解释
    /root该目录为系统管理员,也称为超级权限者的用户主目录(即超级用户目录)
    /bin是Binary的缩写,这个目录存放着最经常使用的命令(即二进制可执行文件)
    /sbins就是Super User的意思,这里存放的是系统管理员使用的命令(即二进制可执行文件,只有root用户才可访问)
    /boot存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件,自己的安装不要放在这里
    /dev存放设备文件。类似于windows的设备管理器,把所有的硬件用文件的形式存储
    /etc所有的系统管理所需要的配置文件和子目录(即存放系统配置文件)
    /home存放普通用户的主目录(即存放系统用户的文件),在Linux中每个用户都有以一个自己的目录,一般该目录名是以用户的账号名命名的。注意:不同的用户就会有相对应的主目录 :
    /lib存放程序运行所需的共享库和内核模块(系统开机所需要最基本的动态连接共享库,其作用类似于windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库)
    /opt额外安装的可选应用软件的程序包所放的目录。比如你安装一个mysql数据库则就可以放到该目录下。默认是空的
    /tmp存放一些临时文件,注意:不能存放一些重要文件,因为该目录下的内容会定时自动清理
    /usr存放系统应用程序(它是重要目录,用户的很多应用程序和文件都放在该目录下,类似于windows下的program files目录)
    /var该目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件以及运行时需要改变数据的文件
    /lost+found这个目录一般情况下为空,当系统非法关机后,这里就会存放一些文件
    /proc这是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息
    /srvservice缩写,该目录存放一些服务启动之后需要提取的数据
    /sys该目录下安装了Linux2.6内核中新出现的一个文件系统sysfs
    /mediaLinux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux会把识别的设备挂载到这个目录下
    /mnt系统提供该目录是为了让用户临时挂载别的文件系统的(比如:挂载U盘),我们可以将外部的存储挂载在/mnt/上,然后进入该目录就可以查看里面的内容了

Linux常用命令

  • Linux命令格式------command [-options] [parameter]

    • command :命令名
    • [-options]:选项,作用是来对命令进行控制
    • [parameter]:传给命令的参数,可以是零个、一个或多个
    • 选项和参数可写也可不写
  • 在执行Linux命令时,返回的提示信息若为乱码则输入以下命令

    echo 'LANG="en_US.UTF-8"'>> /etc/profile
    source /etc/profile
    

    第一句代表将编码格式添加到etc下的profile文件中去

    第二句是重新加载etc下的profile文件使其生效

命令对应英文解释
lslist查看当前目录下的内容
pwdprint work directory查看当前所在目录
cd [目录名]change directory切换目录
touch [文件名]touch若文件不存在则创建文件。(注意:该命令可一次创建多个文件)
mkdir [目录名]make directory创建目录
rm [文件名]remove删除指定文件或目录(只能删除一级目录不能递归删除其子目录)。(注意:该命令可一次删除多个文件)
rm -r [文件名]删除指定目录及其所有内容(包括其子目录和子目录下的所有内容)
ps -ef查看当前运行的所有进程的详细信息(该命令经常配合管道符,具体示例详见Tomcat进程查看)

在这里插入图片描述

  • 使用技巧
    • Tab键自动补全
    • 连续两次Tab键给出操作提示
    • 使用上下箭头快速调出曾经使用的命令
    • 使用clear命令或Ctrl+L快捷键实现清屏

文件目录操作命令

ls

  • 作用
    • 显示指定目录下的内容
  • 语法
    • ls [-a或-l] [dir]
    • -a :显示所有文件及目录(.开头的隐藏文件也会被列出)
    • -l :除文件名外,同时将文件型态(d表示目录,-表示文件)、权限、拥有者、文件大小等信息详细列出
    • 注意
      • -a -l都写时可写为ls -a -lls -al
  • 注意
    • 使用ls命令时经常需要加-l选项,所以Linux命令为其提供了一种简写方式:ll

在这里插入图片描述

cd

  • 作用
    • 切换当前工作目录,即进入指定目录
  • 语法
    • cd [dirName]
    • cd .. :切换级目录
    • cd ~ :切换到用户的home目录
    • cd /usr/local :切换到/usr/local目录
  • 注意
    • ~表示用户的home目录
    • .表示目前所在的目录
    • ..表示目前目录位置的上级目录

在这里插入图片描述

cat

  • 作用
    • 显示文件内容
  • 语法
    • cat [-n] fileName
    • -n:由1开始对所有输出的行数编号
    • 例子:cat /etc/profile :查看/etc目录下的profile文件内容

在这里插入图片描述

more

  • 作用
    • 以分页的形式显示文件内容
  • 语法
    • more fileName
    • 例子:more /etc/profile :分页查看/etc目录下的profile文件内容
  • 操作说明
    • 回车键:向下滚动一行
    • 空格键:向下滚动一屏
    • b:返回上一屏
    • qCtrl+C:退出more

在这里插入图片描述

tail

  • 作用
    • 查看文件末尾的内容
  • 语法
    • tail [-f] fileName
    • -f :动态读取文件末尾内容并显示,通常用于日志文件的内容输出
    • 例子:
      • tail /etc/profile:显示/etc目录下的profile文件的末尾10行的内容 (不加-f)
      • tail -20 /etc/profile:显示/etc目录下的profile文件的末尾20行的内容
      • tail -f /itcast/my.log:动态读取/itcast目录下的my.log文件末尾内容并显示
  • tail -f /itcast/my.log示例

mkdir

  • 作用
    • 创建目录
  • 语法
    • mkdir [-p] dirName
    • -p:确保目录名称存在,若不存在就创建一个。通过该选项可以实现多层目录同时创建
  • 示例
    • mkdir itcast:创建单层目录
    • mkdir -p itcast/test :创建多层目录

rmdir

  • 作用
    • 删除空目录
  • 语法
    • rmdir [-p] dirName
    • -p:当子目录被删除后使父目录为空目录的话,则此时父目录也会被删除
  • 示例
    • rmdir itcast:删除名为itcast的空目录
    • rmdir itcast* :删除名称为itcast开头的空目录
    • rmdir -p itcast/test:删除itcast目录中名为test的空目录,若test目录被删除后,itcast目录变为空目录则itcast目录也会被一并删除

rm

  • 作用
    • 删除文件或目录。不论是否为空
  • 语法
    • rm [-rf] name
    • -r:将目录及目录中的所有文件或目录逐一删除(即递归删除)
    • -f:无需确认,直接删除
  • 示例
    • rm -r itcast/:删除名为itcast的目录和目录中的所有文件,删除前需确认
    • rm -rf itcast/:直接删除名为itcast的目录和目录中的所有文件,删除前无需确认
    • rm -f hello.txt:直接删除hellotxt文件,无需确认

拷贝移动命令

cp

  • 作用
    • 复制文件或目录
  • 语法
    • cp [-r] source dest
    • -r:若复制的是目录则需要该选项,此时将复制该目录下的所有子目录和文件
  • 示例
    • cp hello.txt itcast/:将hello.txt复制到itcast目录中
    • cp hello.txt ./hi.txt:将hello.txt复制到当前目录,并改名为hi.txt
    • cp -r itcast/ ./it/:将itcast目录和该目录下的所有文件复制到当前所在目录下的it目录下
    • cp -r itcast/* ./it/:将itcast目录下的所有文件复制到当前所在目录下的it目录下

mv

  • 作用
    • 为文件或目录改名
    • 将文件或目录移动到其它位置
  • 示例
    • mv hello.txt hi.txt:将hello.txt改名为hi.txt
    • mv hi.txt it/:将文件hi.txt移动到it目录中
    • mv hi.txt it/hello.txt:将hi.txt移动到it目录下并改名为hello.txt
    • mv itcast/ it/:若itcast目录不存在则将itcast目录改名为it
    • mv itcast/ it/:若itcast目录存在则将itcast目录及该目录下的所有内容均移动到it目录中

打包压缩命令------tar

  • 作用
    • 对文件进行打包、解包、压缩、解压
  • 语法
    • tar [-zcxvf] fileName [files]
    • -z:z代表的是gzip,通过gzip命令处理文件,gzip可以对文件压缩或解压
    • -c:c代表create,创建新的包文件(即打包)
    • -x:x代表extract,实现从包文件中还原文件(即解包)
    • -v:v代表verbose,显示命令的执行过程
    • -f:f代表file,用于指定包文件的名称
  • 注意
    • 包文件后缀为.tar表示只是完成了打包,并没有压缩
    • 包文件后缀为.tar.gz表示打包的同时还进行了压缩
  • 示例
    • tar -cvf test.tar t1:将text文件打包并将打包后的名命名为test.tar的文件(注意:只是完成了打包,并未压缩)
      • c:打包
      • v:显示执行过程
      • f:命名打包后的包名
    • tar -zcvf test.tar t1:将text文件打包压缩并将打包压缩后的名命名为test.tar.gz

在这里插入图片描述

在这里插入图片描述

tar [-zcxvf] fileName -C 指定目录

  • 作用
    • 将要进行解压、解包的文件fileName解压或解包后放在指定的目录中

在这里插入图片描述

文本编辑命令------vi/vim

  • 作用
    • vi是Linux系统的一个文本编辑工具,可以对文件内容进行编辑,类似于Wind ows中的记事本
  • 语法
    • vi fileNamevim fileName
    • 说明
      • vim是从vi发展来的一个功能更强大的文本编辑工具,在编辑文件时可以对文本内容进行着色,方便对文件进行编辑处理
      • 可通过yum install vim命令进行vim的安装
  • 注意
    • 使用vim编辑文件时,若指定文件存在则会直接打开该文件,反之则会创建该文件
    • vim进行文本编辑时分为三种模式:命令模式(Command mode)、嵌入模式(Insert mode)、底行模式(Last line mode)。这三种模式之间可互相切换。使用vim进行编辑时要注意当前所处的模式

vim的三种模式

  • 命令模式
    • 该模式下可查看文件内容、移动光标(可通过上下左右箭头移动、可连按两个g会回到文件开头、按一个G会回到文件末尾)
    • 通过vim命令打开文件后会默认进入命令模式
    • 两外两种模式都必须 需要首先进入命令模式才能进入
  • 插入模式
    • 该模式下可对文件进行编辑
    • 在命令模式下按下[iao]任意一个字母,即可进入插入模式,进入插入模式后下方会出现insert字样
    • 在该模式下按ESC会回到命令模式
  • 底行模式
    • 该模式下可通过命令对文件内容进行查找、显示行号、退出等操作
    • 在命令模式下按下[:/]任意一个符号即可进入底行模式
    • 通过/进入底行模式后可对文件内容进行查找
    • 通过:进入底行模式后可输入wq(保存并退出)、q!(不保存退出)、set nu(显示行号)

查找命令

find

  • 作用

    • 在指定的目录下查找文件
  • 语法

    • find dirName -option fileName
    • dirName:指定要查找文件的目录
    • -option:选项,作用是来对命令进行控制
    • fileName:要查找的文件
  • 示例

    • find . -name "*.java" :在当前目录及其子目录下查找.java结尾的文件
    • find /ittest -name "*.java":在/iittest目录及其子目录下查找.java结尾的文件

grep

  • 作用
    • 从指定文件中查找指定的文本内容
    • 该命令会区分大小写
  • 语法
    • grep word fileName
    • word:要查找的文本内容(即文本关键字)
    • fileName:要查找的文件(即要查找的内容所在的文件)
  • 示例
    • grep Hello test.txt:从test.txt文件中查找Hello出现的位置
    • grep hello *.txt:查找当前目录中所有以.txt结尾的文件中的内容包含hello字符串的位置

在这里插入图片描述

防火墙操作

操作指令备注
查看防火墙状态systemctl status firewalld / firewall-cmd --state
暂时关闭防火墙systemctl stop firewalld
永久关闭防火墙(禁用开机自启)systemctl disable firewalld下次启动,才生效
暂时开启防火墙systemctl start firewalld
永久开启防火墙(启用开机自启)systemctl enable firewalld下次启动,才生效
开放指定端口firewall-cmd --zone=public --add-port=8080/tcp --permanent需要重新加载生效
关闭指定端口firewall-cmd --zone=public --remove-port=8080/tcp --permanent需要重新加载生效
立即生效(重新加载)firewall-cmd --reload
查看开放端口firewall-cmd --zone=public --list-ports
  • 注意
    • systemctl是管理Linux中服务的命令,可以对服务进行启动、停止、重启、查看状态等操作
    • firewall-cmd是Linux中专门用于控制防火墙的命令
    • 为了保证系统安全,服务器的防火墙不建议关闭Linux

软件安装

安装方式

  • 二进制发布包安装

    • 软件已针对具体平台编译打包发布,只要解压、修改配置即可
  • rpm安装

    • rpm全称为 Red-Hat Package Manager,RPM软件包管理器,是红帽Linux用于管理和安装软件的工具。
    • 软件已按照redhat的包管理规范进行打包,使用rpm命令进行安装,不能自行解决库依赖问题
  • yum安装

    • Yum: (Yellow dog Updater,Modified),是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
    • 在线软件安装方式,本质上还是rpm安装,自动下载安装包并安装,安装过程中自动解决库依赖问题
  • 源码编译安装

    • 软件以源码工程的形式发布,需要自己编译打包

安装JDK(二进制发布包安装)

  • 操作步骤(以JDK21为例)

    • 进入JDK官网下载Linux对应的JDK版本的压缩包

      在这里插入图片描述

    • 创建JDK安装路径并进入到安装路径中(一般安装的软件均在/usr/local目录下)

      在这里插入图片描述

    • 使用FinalShell自带的上传工具将JDK的二进制发布包上传到Linux(上传的位置为JDK安装目录),上传成功后如图二所示

      在这里插入图片描述

    • 解压安装包

      • 若未提前将压缩包放到要解压缩并安装的目录下(该目录必须提前被创建),则使用的命令为:tar -zxvf jdk-21_linux-x64_bin.tar.gz -C 指定目录以此来将jdk安装到对应的目录,比如:tar -zxvf jdk-21_linux-x64_bin.tar.gz -C /usr/local/java

      • 若提前将压缩包放到要解压缩并安装的目录下,则需要先进入该目录下,然后使用命令为:tar -zxvf jdk-21_linux-x64_bin.tar.gz

      • 解压成功后对应目录下会出现解压后的目录,如图所示

        在这里插入图片描述

    • 配置环境变量,使用vim命令修改/etc/profile文件,在文件末尾加入如下配置:

      JAVA_HOME=/usr/local/java/jdk-21.0.3
      PATH=$JAVA_HOME/bin:$PATH
      
    • 重新加载profile文件,使更改的配置立即生效,命令为:source /etc/profile

    • 检查安装是否成功,命令为:java -version

      在这里插入图片描述

Tomcat

Tomcat安装及启动安装及启动(二进制发布包安装)

  • 步骤

    • 进入Tomcat官网,下载对应的Linux版本的Tomcat压缩包(以Tomcat9.0.x为例)

      在这里插入图片描述

    • 创建Tomcat安装路径并进入到安装路径中(一般安装的软件均在/usr/local目录下)

    • 使用FinalShell自带的上传工具将Tomcat的二进制发布包上传到Linux(上传的位置为Tomcat安装目录)

    • 解压安装包

      • 若未提前将压缩包放到要解压缩并安装的目录下(该目录必须提前被创建),则使用的命令为:tar -zxvf apache-tomcat-9.0.88.tar.gz -C 指定目录以此来将jdk安装到对应的目录,比如:tar -zxvf apache-tomcat-9.0.88.tar.gz -C /usr/local/tomcat

      • 若提前将压缩包放到要解压缩并安装的目录下,则需要先进入该目录下,然后使用命令为:tar -zxvf apache-tomcat-9.0.88.tar.gz

      • 解压成功后对应目录下会出现解压后的目录,如图所示

        在这里插入图片描述

    • 完成以上步骤则Tomcat安装成功

  • 启动Tomcat

    • 进入到Tomcat的bin目录然后执行命令sh startup.sh./startup.sh来启动服务

      在这里插入图片描述

    • 启动成功后并不能知道Tomcat是否正常运行,所以可通过查看进程来验证

Tomcat进程查看

  • 方式一:查看Tomcat的启动日志

    Tomcat的启动日志输出在Tomcat的安装目录下的logs目录中,Tomcat的启动及运行日志文件名为 catalina.out,所以我们查看Tomcat启动日志,主要可以通过两条指令

    • 若未进入到Tomcat安装目录下的logs目录则使用命令

      • 分页查询Tomcat的日志信息:more /usr/local/apache-tomcat-9.0.88/logs/catalina.out
      • 查询日志文件尾部的50行记录:tail -50 /usr/local/apache-tomcat-9.0.88/logs/catalina.out
    • 若已进入到Tomcat安装目录下的logs目录则使用命令

      • 分页查询Tomcat的日志信息:more catalina.out
      • 查询日志文件尾部的50行记录:tail -50 catalina.out
    • 注意:若Tomcat的日志文件没有报错则基本可以判定Tomcat启动成功,如图所示

      在这里插入图片描述

  • 方式二:查询系统进程

    • 通过Linux系统的查看系统进程的指令,来判定Tomcat进程是否存在,从而判定Tomcat是否启动,如图所示。执行指令为:ps -ef|grep tomcat

      • ps命令是linux下非常强大的进程查看命令,通过ps -ef可以查看当前运行的所有进程的详细信息
      • |在Linux中称为管道符,可以将前一个命令的结果输出给后一个命令作为输入
      • 使用ps命令查看进程时,经常配合管道符和查找命令 grep 一起使用,来查看特定进程

      在这里插入图片描述

  • 注意:通过进程可看出Tomcat正常运行,但是在浏览器中输入虚拟机的ip地址以及端口号却无法访问Tomcat网页,如图所示

    在这里插入图片描述

    • 造成上述原因是:Linux系统安装完毕后,系统启动时,Linux的防火墙会自动启动,防火墙拦截了所有端口的访问。

浏览器访问运行的Tomcat

  • 方式一:关闭防火墙------systemctl stop firewalld

    在这里插入图片描述

    从图中可看出关闭之后,再次访问Tomcat,就可以访问到了。但是不建议直接关闭防火墙,因为这样会造成系统不安全

  • 方式二:开放Tomcat的端口号8080(通过查看Tomcat的启动日志可找到其端口号)

    • 命令步骤如下

      ①. 先开启系统防火墙
      systemctl start firewalld②. 再开放8080端口号
      firewall-cmd --zone=public --add-port=8080/tcp --permanent③. 重新加载防火墙
      firewall-cmd --reload
      

      在这里插入图片描述

停止Tomcat

  • 方式一:运行Tomcat提供的脚本文件(Tomcat安装目录下的bin目录中的shutdown.sh)------推荐使用

    • 命令为sh shutdown.sh./shutdown.sh
  • 方式二:结束Tomcat进程

    • 首先ps -ef|grep tomcat 指令查看tomcat进程的信息,从进程信息中获取tomcat服务的进程号。

      在这里插入图片描述

    • 然后通过kill -9 进程号来杀死对应的Tomcat进程即可------kill -9 49666

      • -9表示强制结束进程
  • 注意

    • 上述两种方式使用任一种即可结束Tomcat进程
    • 推荐使用第一种方式来停止Tomcat,若第一种停止失败则再考虑第二种方式

MySQL(利用rpm安装)

  • 在安装MySQL之前首先要检查当前系统安装过MySQL相关数据库

    • 需要通过rpm相关指令,来查询当前系统中是否存在已安装的mysql软件包,执行指令如下:

      • 查询当前系统中安装的所有软件:rpm -qa
      • 查询当前系统中安装的名称带mysql的软件:rpm -qa | grep mysql
      • 查询当前系统中安装的名称带mariadb的软件:rpm -qa | grep mariadb

      通过rpm -qa 查询到系统通过rpm安装的所有软件,太多了,不方便查看,所以我们可以通过管道符 | 配合着grep进行过滤查询。

    • 由图可知,CentOS7自带一个mariadb数据库,而这个数据库和MySQL数据库是冲突的,所以要想保证MySQL成功安装,需要卸载mariadb数据库。

      在这里插入图片描述

  • 卸载现有的MySQL数据库------rpm -e --nodeps 软件名称

    在这里插入图片描述

    • 卸载完成后再次查询 mariadb,若查不到则成功卸载

MySQL安装

  • MySQL安装步骤

    • 进入MySQL官网(如图所示),下载对应的Linux版本的Tomcat压缩包(以MySQL8.0.13为例)

      在这里插入图片描述

    • 创建MySQL安装路径并进入到安装路径中(一般安装的软件均在/usr/local目录下)

    • 使用FinalShell自带的上传工具将JDK的二进制发布包上传到Linux(上传的位置为Tomcat安装目录)

    • 解压安装包

      • 若未提前将压缩包放到要解压缩并安装的目录下(该目录必须提前被创建),则使用的命令为:tar -xvf mysql-8.0.13-1.el7.x86_64.rpm-bundle.tar -C 指定目录以此来将jdk安装到对应的目录,比如:tar -xvf mysql-8.0.13-1.el7.x86_64.rpm-bundle.tar -C /usr/local/mysql

      • 若提前将压缩包放到要解压缩并安装的目录下,则需要先进入该目录下,然后使用命令为:tar -xvf mysql-8.0.13-1.el7.x86_64.rpm-bundle.tar

      • 解压成功后对应目录下会出现8个rpm安装包,如图所示

      在这里插入图片描述

    • 按照如下命令顺序安装rpm安装包(注意:不必所有安装包都安装,只需安装我所写出来的部分)

      rpm -ivh mysql-community-common-8.0.13-1.el7.x86_64.rpm
      rpm -ivh mysql-community-libs-8.0.13-1.el7.x86_64.rpm
      sudo yum install pkgconfig openssl-devel
      rpm -ivh mysql-community-devel-8.0.13-1.el7.x86_64.rpm
      rpm -ivh mysql-community-libs-compat-8.0.13-1.el7.x86_64.rpm
      rpm -ivh mysql-community-client-8.0.13-1.el7.x86_64.rpm
      yum install net-tools
      rpm -ivh mysql-community-server-8.0.13-1.el7.x86_64.rpm
      

      在这里插入图片描述

      注意:

      ​ 1.安装mysql-community-devel-8.0.13-1.el7.x86_64.rpm之前要先安装pkgconfig依赖;安装mysql-community-server-8.0.13-1.el7.x86_64.rpm之前要先安装net-tools依赖,否则会报错:依赖检测失败,如上图所示

      ​ 2.安装依赖时使用yum安装,它是一种在线安装方式,需要保证联网

    • 安装完成后可使用yum update命令来升级现有软件及系统内核(此处截图省略)

MySQL启动

  • MySQL安装完成之后,会自动注册为系统的服务,服务名为mysqld。那么,我们就可以通过systemctl指令来查看mysql的状态、启动mysql、停止mysql。

    • 查看mysql服务状态:systemctl status mysqld
    • 启动mysql服务:systemctl start mysqld
    • 停止mysql服务:systemctl stop mysqld

    在这里插入图片描述

    可以利用命令systemctl enable mysqld设置开机时启动mysql服务,避免每次开机启动mysql。

  • 判定MySQL是否启动成功方式一

    • 查看已经启动的服务:netstat -tunlp
    • 查看mysql的服务信息:netstat -tunlp | grep mysql

    在这里插入图片描述

    netstat命令是net-tools中的指令,所以要想使用该命令需要先安装net-tools依赖

  • 判定MySQL是否启动成功方式二

    • 查看mysql进程:ps -ef | grep mysql

    在这里插入图片描述

MySQL登录

  • 查阅临时MySQL密码:利用rpm安装mysql完成后,在mysql第一次启动时,会自动帮我们生成root用户的访问密码,并且输出在mysql的日志文件/var/log/mysqld.log中,我们可以查看这份日志文件,从而获取到访问密码。

    • 查看mysql的日志文件: cat -n /var/log/mysqld.log
    • 查看mysql日志文件中包含密码的内容:cat -n /var/log/mysqld.log | grep password

    在这里插入图片描述

  • MySQL登录步骤

    • 登录MySQL,然后输入临时密码------mysql -u root -p

    • 修改密码(以MySQL8.0及之后的版本为例)

      • 设置密码长度最低位数:set global validate_password.length=4;
      • 设置密码安全等级为0,此时密码策略被禁用(若不禁用则无法设置一个简单密码),便于设置一个简单的密码:set global validate_password.policy=0;
      • 设置密码为123456:ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

      在这里插入图片描述

    • 开启访问权限(作用:可从外部访问(比如windows)到Linux中的MySQL)

      • MySQL8.0之前需执行以下命令
        • grant all on *.* to 'root'@'%' identified by 'root';
        • flush privileges;
      • MySQL8.0及之后需执行以下命令
        • create user root@'%' identified by '123456';
        • grant all privileges on *.* to root@'%' with grant option;
        • flush privileges;

      在这里插入图片描述

    • 开启防火墙的3306端口

      • firewall-cmd --zone=public --add-port=3306/tcp --permanent
      • firewall-cmd --reload

      在这里插入图片描述

    MySQL登录步骤执行完成之后即可完成密码的更改,并且此时可以使用windows中的SQLyog或Navicat来远程连接Linux上的MySQL。

    在这里插入图片描述

  • MySQL登录成功后对数据库的相关操作命令详见MySQL完整知识点汇总

lrzsz安装(利用yum安装)

  • 作用

    • 向Linux系统中上传下载的软件及文件
    • Linux的远程连接工具有很多,虽然finalShell具有上传功能,但还有很多的远程连接工具并没有上传下载的功能,这个时候就需要依赖于lrzsz这个软件了。
  • 安装步骤

    • 搜索lrzsz安装包:yum list lrzsz
    • 在线安装lrzsz:yum install lrzsz.x86_64

    在这里插入图片描述

  • 验证是否安装成功

    • 在命令行中输入 rz , 若自动打开一个文件选择的窗口,则说明安装成功

    在这里插入图片描述

项目部署(后续补充)

将来绝大部分的项目均需要部署在Linux系统上,所以此处学习两种项目部署方式:手工部署和基于Shell脚本自动部署

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/36662.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Three.js鼠标拖动设置骨骼姿态

实现 根据SkinnedMesh生成Mesh 作为射线检测的目标(射线检测SkinnedMesh存在不足 无法应用骨骼形变的顶点 )点击模型 获取点击位置对应的骨骼拖拽鼠标设置骨骼旋转角度(使用TransformControl选中点击的骨骼 设置轴为XYZE 并隐藏控件 主动触发…

PostgreSQL计算 queryid 原理

数据库版本 PG 16.1 queryid 是什么 queryid 是将 sql 规范化 (normalization) 后&#xff0c;通过哈希函数计算出来的 64 位整数。 以 SELECT id, data FROM tbl_a WHERE id < 300 ORDER BY data; 这条 SQL 为例。当我们在 PG 中执行这条 sql 时&#xff0c;内核在语义…

【STM32-DAP 仿真器】

STM32-DAP 仿真器 ■ STM32-DAP仿真器介绍■ STM32-DAP仿真特点■ STM32-DAP仿真器实物图■ STM32-DAP高速 DAP 仿真器实物图■ STM32-DAP高速无线调试器 实物图■ STM32-DAP高速无线调试器示意图■ STM32-DAP高速无线调试器接线图■ STM32-DAP高速无线调试器接收端示意图 ■ S…

vcruntime140_1.dll是什么东东?vcruntime140_1.dll缺失的8个解决方法

当电脑出现找不到vcruntime140_1.dll,或vcruntime140_1.dll丢失无法打开软件怎么办&#xff1f;小编今天在本文详细为大家介绍解决方法与介绍vcruntime140_1.dll究竟是什么等vcruntime140_1.dll的问题。 一、vcruntime140_1.dll文件是什么 文件概述定义与功能 vcruntime140_…

CAN收发器

1、收发器的主要功能 &#xff08;1&#xff09;CAN通讯&#xff08;即报文收发&#xff09; MCU要CAN通讯&#xff1a;收发器模式切换至正常通讯模式&#xff08;Normal&#xff09;&#xff0c;正常通讯模式收发器能收能发。 MCU不要CAN通讯&#xff1a;把收发器切换至其它…

format()函数

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 语法介绍 format()可以对数据进行格式化处理操作&#xff0c;语法如下&#xff1a; format(value, format_spec) format_spec为格式化解释。当参数…

C语言笔记26 •顺序表应用•

基于动态顺序表实现通讯录项目 1.通讯录其实也就是顺序表&#xff0c;就是把里面存的数据类型变了一下 &#xff0c;所以有一些方法对于顺序表适用&#xff0c;对于通讯录也是适用的&#xff08;初始化&#xff0c;销毁&#xff0c;内存空间扩容&#xff09;。 2.要用到顺序表…

【设计模式】行为型-策略模式

策略模式&#xff0c;如春风吹过&#xff0c;随心所欲&#xff0c;变幻无穷&#xff0c;每一丝风都是一种选择。 文章目录 一、订单处理二、策略模式三、策略模式的核心组成四、运用策略模式五、策略模式的应用场景六、小结推荐阅读 一、订单处理 场景假设&#xff1a;有一个…

MySQL高级-索引-设计原则小结

文章目录 1、设计原则2、索引小结2.1、索引概述2.2、索引结构2.3、索引分类2.4、索引语法2.5、SQL性能分析2.6、索引使用2.7、索引设计原则 1、设计原则 针对于数据量较大&#xff0c;且查询比较频繁的表建立索引。针对于常作为查询条件&#xff08;where&#xff09;、排序&am…

2毛钱的SOT23-5封装28V、1.5A、1.2MHz DCDC转换器用于LCD偏置电源和白光LED驱动等MT3540升压芯片

前言 之前发了一个TI的BOOST升压芯片&#xff0c;用于LCD偏置电压或LED驱动&#xff0c;请访问以下链接。 6毛钱SOT-23封装28V、400mA 开关升压转换器&#xff0c;LCD偏置电源和白光LED应用芯片TPS61040 国产半导体厂家发展迅猛&#xff0c;今天推荐一个公司带“航天”的升压…

Java基础知识整理笔记

目录 1.关于Java概念 1.1 谈谈对Java的理解&#xff1f; 1.2 Java的基础数据类型&#xff1f; 1.3 关于面向对象的设计理解 1.3.1 面向对象的特性有哪些&#xff1f; 1.3.2 重写和重载的区别&#xff1f; 1.3.3 面向对象的设计原则是什么&#xff1f; 1.4 关于变量与方…

搭建 MySQL MHA

搭建 MySQL MHA 搭建 MySQL MHA实验拓扑图实验环境实验思路MHA架构故障模拟 实验部署数据库安装主从复制部署时间同步主服务器配置从服务器配置创建链接 MHA搭建安装依赖的环境安装 node 组件安装 manager 组件配置无密码认证在 manager 节点上配置 MHA管理 mysql 节点服务器创…

面试突击:Java 集合知识体系梳理

本文已收录于&#xff1a;https://github.com/danmuking/all-in-one&#xff08;持续更新&#xff09; 前言 哈喽&#xff0c;大家好&#xff0c;我是 DanMu。在 Java 开发中&#xff0c;集合类对象绝对是被使用最频繁的对象之一。因此&#xff0c;深入了解集合类对象的底层数…

热敏晶振:成本效益的选择与温补晶振的比较

在精密电子系统的设计中&#xff0c;晶振作为时间基准源&#xff0c;其频率稳定性直接影响到整个系统的性能。其中&#xff0c;温补晶振(Temperature Compensated Crystal Oscillator&#xff0c;简称TCXO)与热敏晶振(Thermistor Compensated Crystal Oscillator)作为在特殊温度…

面试-java异常体系

1.java异常体系 error类是指与jvm相关的问题。如系统崩溃&#xff0c;虚拟机错误&#xff0c;内存空间不足。 非runtime异常不处理&#xff0c;程序就没有办法执行。 一旦遇到异常抛出&#xff0c;后面的异常就不会进行。 (1)常见的error以及exception 2.java异常要点分析…

kubekey 安装高可用 kubernetes 集群

1. 准备环境 1.1 机器准备 4 台机器&#xff0c;操作系统&#xff1a;Ubuntu 24.04/RHEL8/CentOS9 10.111.3.53 master1 10.111.3.54 master2 10.111.3.55 master3 10.111.3.57 node41.2 安装依赖和配置 所有节点都需要执行&#xff1a; Ubuntu: apt-get install -y soca…

【AI大模型】Transformers大模型库(十四):Datasets Viewer

目录 一、引言 二、Datasets Viewer数据查看器 2.1 概述 2.2 示例 三、总结 一、引言 这里的Transformers指的是huggingface开发的大模型库&#xff0c;为huggingface上数以万计的预训练大模型提供预测、训练等服务。 &#x1f917; Transformers 提供了数以千计的预训练…

如何使用大模型进行文本分类任务?

暑期实习基本结束了&#xff0c;校招即将开启。 不同以往的是&#xff0c;当前职场环境已不再是那个双向奔赴时代了。求职者在变多&#xff0c;HC 在变少&#xff0c;岗位要求还更高了。 最近&#xff0c;我们又陆续整理了很多大厂的面试题&#xff0c;帮助一些球友解惑答疑&…

openlayer 鼠标点击船舶,打开船舶简单弹框

背景&#xff1a; 对创建的地图对象&#xff0c;可以添加上监听事件&#xff0c;常用的有&#xff1a;地图点击事件、鼠标移动事件。 通过监听这些事件&#xff0c;又可以区分不同图层的不同要素&#xff0c;获取不同数据&#xff1b; 根据这些数据&#xff0c;又可以发起网络请…

【介绍下SCSS的基本使用】

&#x1f3a5;博主&#xff1a;程序员不想YY啊 &#x1f4ab;CSDN优质创作者&#xff0c;CSDN实力新星&#xff0c;CSDN博客专家 &#x1f917;点赞&#x1f388;收藏⭐再看&#x1f4ab;养成习惯 ✨希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出…