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

news2024/12/26 0:40:49

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.coloradmin.cn/o/1871274.html

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

相关文章

电脑桌面便签怎么添加,桌面备忘录软件哪个简单又好用?

在日常的工作或学习中,我们经常需要记事、备忘。这时,一个简单实用的桌面便签工具就显得尤为重要了。那么,电脑桌面便签怎么添加?又有哪些桌面备忘录软件既简单又好用呢? 首先,关于如何添加电脑桌面便签。…

vue如何引入图标

方法1&#xff1a;iconify/vue pnpm add iconify/vue -D 网址&#xff1a;https://icon-sets.iconify.design/ 使用哪个需要安装 如下截图,安装指令&#xff1a; > npm install iconify/icons-gg在使用的页面引入 import { Icon } from “iconify/vue”; <template>…

CODESYS+EtherCAT+X86/ARM硬件平台:高性能运动控制的标配,支持定制

支持的硬件标准与定制平台&#xff1a; X86:INTEL ARM: RK3568/RK3588/TI/NXP/树莓派/全志T3/A40i等 前段时间分享了施耐德基于CODEYS开发的首款支持EtherCAT总线的运动控制器&#xff0c;CODESYSEtherCATX86硬件平台&#xff1a;高性能运动控制的标配。 CODESYS第一次接触还…

【银河麒麟】unzip程序卡住,处理机制详解,附代码

1.服务器环境以及配置 【机型】 处理器&#xff1a; HUAWEI,Kunpeng 920 内存&#xff1a; 400G 【内核版本】 4.19.90-23.18.v2101.ky10.aarch64 【OS镜像版本】 银河麒麟高级服务器操作系统V10-SP1-0711-arm 【第三方软件】 docker 2.问题现象描述 一台k8s服务器…

Camera2内存泄漏修复

最近公司想要使用Camera2来替换线上的旧版相机&#xff0c;功能调研过程中发现Camera2在很多机器上都会有奇怪的内存泄漏&#xff0c;比较明显的时候可能有100M&#xff0c;比较常见的是表现为内存释放不及时&#xff08;上涨一段时间后会有一次下降&#xff09;&#xff0c;这…

Web渗透:XXE-XML外部实体漏洞

XML External Entity (XXE) 漏洞是一种注入攻击&#xff0c;利用不安全的XML解析器来执行各种恶意操作&#xff0c;如读取本地文件、执行远程代码、发起拒绝服务攻击等&#xff1b;此漏洞的根本原因在于XML标准允许在文档中定义外部实体&#xff0c;并在解析时进行解析和替换。…

快储存,分布式文件系统,对象储存

Ceph块存储 镜像快照 快照可以保存某一时间点时的状态数据快照是映像在特定时间点的只读逻辑副本希望回到以前的一个状态&#xff0c;可以恢复快照使用镜像、快照综合示例 rbd create img1 --size 10G 创建镜像rbd ls 查看镜像 rbd info img1 #查看…

使用原子子表创建可重用的子组件

原子子表是一个图形对象&#xff0c;可帮助您在Stateflow图表中创建独立的子部件。原子子表允许&#xff1a; 对具有多个状态或层次结构的图表进行微小更改后&#xff0c;模拟速度更快。 在多个图表和模型中重复使用相同的状态或子表。 易于团队开发&#xff0c;适用于在同一图…

大语言模型在医疗领域的进展、应用和挑战_医疗大语言模型算法csdn

### 概述 本文综述了医学领域大型语言模型&#xff08;LLM&#xff09;的进展、应用和面临的挑战。大型语言模型如ChatGPT在理解和生成人类语言方面显示出了显著的能力&#xff0c;引起了广泛关注。在医学领域&#xff0c;研究人员正致力于利用LLM支持各种医疗任务&#xff0c…

文华财经盘立方博易大师主图指标公式大全源码均线

文华财经盘立方博易大师主图指标公式大全源码均线&#xff1a; N:3; EMA25:EMA(C,25),COLORRED,LINETHICK2; EMA70:EMA(C,70),COLORGREEN,LINETHICK2; EMA450:EMA(C,450),COLORYELLOW,LINETHICK2; CONDA1:EMA25>EMA70&&C>HV(H,6)&&C>EMA450&…

C语言 | Leetcode C语言题解之第179题最大数

题目&#xff1a; 题解&#xff1a; long cmp(int *x, int *y) {unsigned long sx 10, sy 10;while (sx < *x) {sx * 10;}while (sy < *y) {sy * 10;}return sx * (*y) (*x) - sy * (*x) - (*y); }char *largestNumber(int *nums, int numsSize) {qsort(nums, numsSi…

Linux C 程序 【01】最小程序

1.开发背景 基于 RK3568 平台的基础上&#xff0c;编译一个在系统上运行的最小程序。 2.开发需求 由于 RK3568 作为宿主机&#xff0c;在上面编译程序比较慢&#xff0c;所以还是采用在 Ubuntu 下交叉编译后再拷贝到宿主机上运行。 设计实验&#xff1a; 1&#xff09;搭建 M…

数据分析必备:一步步教你如何用matplotlib做数据可视化(14)

1、Matplotlib 图像 Matplotlib包中的图像模块提供加载&#xff0c;重新缩放和显示图像所需的功能。Pillow库支持加载图像数据。Matplotlib仅支持PNG图像。如果本机读取失败&#xff0c;下面显示的命令将回退到Pillow。 此示例中使用的图像是PNG文件&#xff0c;但请记住数据的…

AFLNet入门教学——测试RTSP协议实现Live555(Ubuntu)

1、简介 本文旨在使用AFLNet对RTSP协议实现Live555进行模糊测试。实验环境为&#xff1a;Ubuntu22.04.4AFLNet安装参考&#xff1a;AFLNet入门教学——安装&#xff08;Ubuntu22.04.4&#xff09;-CSDN博客 2、安装Live555 本次实验采取的是live555在2018年8月28日上传的版本…

数据库怎么同步

数据库要怎么同步呢&#xff0c;有很多方法&#xff0c;看你用什么数据库&#xff0c;如果是Sqlserver,你要数据库同步&#xff0c;那么可以使用自带的订阅发布&#xff0c;订阅发布应该是不错的方法&#xff0c;但是我上次要配置双向同步&#xff0c;它的对等发布好像没部署成…

【LeetCode】四、栈相关:有效的括号 + 下一个更大的元素

文章目录 1、栈结构2、Java中的栈3、leetcode20&#xff1a;有效的括号4、leetcode496&#xff1a;下一个更大元素 1、栈结构 和队列相反&#xff0c;栈先进后出 时间复杂度&#xff1a;访问、插入、删除都在栈顶进行操作&#xff0c;时间复杂度为O(1)&#xff0c;搜索需要遍…

【自监督-MIM】系列方法学习二

Masked image modeling 是一种训练深度学习模型的技术,尤其是在视觉领域,类似于自然语言处理中的掩码语言建模(Masked Language Modeling)。它通过在输入图像中随机遮挡(或称为掩码)部分区域,然后训练模型来预测这些被遮挡部分的内容,从而提高模型的视觉理解能力。 Ma…

常见的字符串函数(包含头文件string.h)和字符函数(2)

八. strstr函数 1.strstr的定义 char *strstr( const char *str1, const char *str2 ); ->1. strstr查找子串(str2)在字符串(str2)中第一次出现的位置&#xff0c;记录并返回该位置的指针&#xff0c;如果找不到&#xff0c;则返回NULL ->2. str1&#xff1a;查找字符…

Java毕业设计 基于SSM vue药店管理系统小程序 微信小程序

Java毕业设计 基于SSM vue药店管理系统小程序 微信小程序 SSM 药店管理系统小程序 功能介绍 用户 登录 注册 首页 药品信息 药品详情 加入购物车 立即购买 收藏 购物车 立即下单 新增收货地址 我的收藏管理 用户充值 我的订单 留言板 管理员 登录 个人中心 修改密码 个人信息…

【深度学习】python之人工智能应用篇--跨模态生成技术

跨模态生成技术概述 跨模态生成技术是一种将不同模态的数据&#xff08;如文本、图像、音频、视频等&#xff09;进行融合和转换的技术。其目标是通过将一个模态的数据作为输入&#xff0c;生成与之对应的另一个模态的输出。这种技术对于突破单一模态的局限性&#xff0c;提高…