当前位置: 首页 > news >正文

【Linux系统基础】(2)在Linux上部署MySQL、RabbitMQ、ElasticSearch等各类软件

实战章节:在Linux上部署各类软件

在这里插入图片描述

前言

为什么学习各类软件在Linux上的部署

在前面,我们学习了许多的Linux命令和高级技巧,这些知识点比较零散,同学们跟随着课程的内容进行练习虽然可以基础掌握这些命令和技巧的使用,但是并没有一些具体的实操能够串联起来这些知识点。

所以,现在我们设计了各类软件在Linux上部署安装的实战章节,可以让同学们:

  • 对前面学习的各类操作命令进行复习和练习,从而深度掌握它们
  • 本章节中演示部署的软件,包含了IT行业各类岗位中所必须使用的,如:Java后台、大数据开发、运维开发、测试、AI等。无论学习Linux后从事什么岗位,这些内容都会给你带来帮助

对于零基础学员,实战课程中所讲解的软件大概率多数大家并不了解。

所以,课程仅涉及到安装部署,不对软件的使用做详细说明。

同学们在这个过程中,可能会遇到各种各样的错误,不要怕,解决它,将会给你带来极大的提升。

学习目标

对于本部分的内容学习,我们设计两个目标:

  • 对于零基础或未从业的学员,不要求深入理解所安装部署的软件是什么,仅仅能够跟随课程成功的将其部署安装并运行成功即可

    在这个过程中,主要锻炼大家对Linux操作系统的熟练度,此乃零基础未从业学员的第一学习目标

  • 对于有基础或已从业的学员,本章节讲解的软件涵盖了大多数IT从业者所能接触到的,特别是大数据开发、后端开发两个主流方向,可以作为参考资料,以便在工作中有所帮助。

本章节内的各类软件安装,不强制要求全部学习

  1. 零基础学员,建议全部学习,作为前面学习内容的总结和实战
  2. IT从业者、有经验学员,可以按需选择,选择工作中需要用到的进行学习

章节内包含的软件并非100%涵盖了IT开发领域中所需要的内容。

如果您对某些软件的安装有强烈需求,且课程中没有提供教程,可以私信,老师会酌情根据时间安排补充上去哦。

从现在开始,将要进入到Linux的实操阶段,在这个阶段我们将会涉及到非常多的软件部署等操作,涉及到:

  • 各类命令的使用
  • 各种过程的结果
  • 复杂的流程步骤

前置要求

  1. 实战章节要求同学们务必全部学习前面的知识点,即:初识Linux、Linux基础命令、Linux权限管理、Linux高阶技巧这4个章节,请勿跳过前面的章节学习实战章节。
  2. 实战章节中会开启多台虚拟机,请尽量确保电脑的内存在:8GB(包含8GB)以上。如内存不足可以扩充内存条或购买阿里云、UCloud等云服务器临时使用(1个月多台低配服务器几十块左右)

对于云平台上购买服务器,可以参阅最后的章节(云服务)

注意

下面全部的软件安装的相关流程,90%都是取自软件自身的官方网站。

一个合格的程序员要有良好的信息收集能力哦

MySQL数据库管理系统安装部署【简单】

简介

MySQL数据库管理系统(后续简称MySQL),是一款知名的数据库系统,其特点是:轻量、简单、功能丰富。

MySQL数据库可谓是软件行业的明星产品,无论是后端开发、大数据、AI、运维、测试等各类岗位,基本上都会和MySQL打交道。

让我们从MySQL开始,进行实战的Linux软件安装部署。

本次课程分为2个版本进行安装:

  • MySQL 5.7版本安装
  • MySQL 8.x版本安装

由于MySQL5.x和8.x各自有许多使用者,所以这两个版本我们都演示安装一遍

注意

MySQL的安装过程中,除了会使用Linux命令外,还会使用到少量的数据库专用的:SQL语句

对于SQL语句我们并未涉及,所以可以跟随教程的内容,复制粘贴即可

如有时间,建议可以在学习完Linux系统之后,学习一下MySQL数据库

无论从事什么方面的开发,Java后端、大数据、AI、前端、Linux运维等,都会要求掌握MySQL数据库的

可以说,MySQL是IT开发从业者必备的技能了。

MySQL5.7版本在CentOS系统安装

注意:安装操作需要root权限

MySQL的安装我们可以通过前面学习的yum命令进行。

安装

  1. 配置yum仓库

    # 更新密钥
    rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022# 安装Mysql yum库
    rpm -Uvh http://repo.mysql.com//mysql57-community-release-el7-7.noarch.rpm
    

    image-20221012182514865

    由于MySQL并不在CentOS的官方仓库中,所以我们通过上述rpm命令:

    • 导入MySQL仓库的密钥
    • 配置MySQLQ的yum仓库
  2. 使用yum安装MySQL

    # yum安装Mysql
    yum -y install mysql-community-server
    

    image-20221012182555420

  3. 安装完成后,启动MySQL并配置开机自启动

    systemctl start mysqld		# 启动
    systemctl enable mysqld		# 开机自启
    

    MySQL安装完成后,会自动配置为名称叫做:mysqld的服务,可以被systemctl所管理

  4. 检查MySQL的运行状态

    systemctl status mysqld
    

    image-20221012182716598

配置

主要配置管理员用户root的密码以及配置允许远程登录的权限。

  1. 获取MySQL的初始密码

    # 通过grep命令,在/var/log/mysqld.log文件中,过滤temporary password关键字,得到初始密码
    grep 'temporary password' /var/log/mysqld.log
    

    image-20221012182744115

  2. 登陆MySQL数据库系统

    # 执行
    mysql -uroot -p
    # 解释
    # -u,登陆的用户,MySQL数据库的管理员用户同Linux一样,是root
    # -p,表示使用密码登陆# 执行完毕后输入刚刚得到的初始密码,即可进入MySQL数据库
    

    image-20221012182805966

  3. 修改root用户密码

    # 在MySQL控制台内执行
    ALTER USER 'root'@'localhost' IDENTIFIED BY '密码';	-- 密码需要符合:大于8位,有大写字母,有特殊符号,不能是连续的简单语句如123,abc
    
  4. [扩展],配置root的简单密码

    我们可以给root设置简单密码,如123456.

    请注意,此配置仅仅是用于测试环境或学习环境的MySQL,如果是正式使用,请勿设置简单密码

    # 如果你想设置简单密码,需要降低Mysql的密码安全级别
    set global validate_password_policy=LOW; # 密码安全级别低
    set global validate_password_length=4;	 # 密码长度最低4位即可# 然后就可以用简单密码了(课程中使用简单密码,为了方便,生产中不要这样)
    ALTER USER 'root'@'localhost' IDENTIFIED BY '简单密码';
    
  5. [扩展],配置root运行远程登录

    默认情况下,root用户是不运行远程登录的,只允许在MySQL所在的Linux服务器登陆MySQL系统

    请注意,允许root远程登录会带来安全风险

    # 授权root远程登录
    grant all privileges on *.* to root@"IP地址" identified by '密码' with grant option;  
    # IP地址即允许登陆的IP地址,也可以填写%,表示允许任何地址
    # 密码表示给远程登录独立设置密码,和本地登陆的密码可以不同# 刷新权限,生效
    flush privileges;
    
  6. 退出MySQL控制台页面

    # 退出命令
    exit# 或者通过快捷键退出:ctrl + d
    
  7. 检查端口

    MySQL默认绑定了3306端口,可以通过端口占用检查MySQL的网络状态

    netstat -anp | grep 3306
    

    image-20221012183746802

至此,MySQL就安装完成并可用了,请妥善保存好MySQL的root密码。

MySQL8.0版本在CentOS系统安装

注意:安装操作需要root权限

安装

  1. 配置yum仓库

    # 更新密钥
    rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022# 安装Mysql8.x版本 yum库
    rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-2.noarch.rpm
    
  2. 使用yum安装MySQL

    # yum安装Mysql
    yum -y install mysql-community-server
    
  3. 安装完成后,启动MySQL并配置开机自启动

    systemctl start mysqld		# 启动
    systemctl enable mysqld		# 开机自启
    

    MySQL安装完成后,会自动配置为名称叫做:mysqld的服务,可以被systemctl所管理

  4. 检查MySQL的运行状态

    systemctl status mysqld
    

配置

主要修改root密码和允许root远程登录

  1. 获取MySQL的初始密码

    # 通过grep命令,在/var/log/mysqld.log文件中,过滤temporary password关键字,得到初始密码
    grep 'temporary password' /var/log/mysqld.log
    
  2. 登录MySQL数据库系统

    # 执行
    mysql -uroot -p
    # 解释
    # -u,登陆的用户,MySQL数据库的管理员用户同Linux一样,是root
    # -p,表示使用密码登陆# 执行完毕后输入刚刚得到的初始密码,即可进入MySQL数据库
    
  3. 修改root密码

    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '密码';	-- 密码需要符合:大于8位,有大写字母,有特殊符号,不能是连续的简单语句如123,abc
    
  4. [扩展],配置root的简单密码

    我们可以给root设置简单密码,如123456.

    请注意,此配置仅仅是用于测试环境或学习环境的MySQL,如果是正式使用,请勿设置简单密码

    set global validate_password.policy=0;		# 密码安全级别低
    set global validate_password.length=4;		# 密码长度最低4位即可
    
  5. 允许root远程登录,并设置远程登录密码

    默认情况下,root用户是不运行远程登录的,只允许在MySQL所在的Linux服务器登陆MySQL系统

    请注意,允许root远程登录会带来安全风险

    # 第一次设置root远程登录,并配置远程密码使用如下SQL命令
    create user 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码!';	-- 密码需要符合:大于8位,有大写字母,有特殊符号,不能是连续的简单语句如123,abc# 后续修改密码使用如下SQL命令
    ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码';
    
  6. 退出MySQL控制台页面

    # 退出命令
    exit# 或者通过快捷键退出:ctrl + d
    
  7. 检查端口

    MySQL默认绑定了3306端口,可以通过端口占用检查MySQL的网络状态

    netstat -anp | grep 3306
    

    image-20221012192303607

至此,MySQL就安装完成并可用了,请妥善保存好MySQL的root密码。

MySQL5.7版本在Ubuntu(WSL环境)系统安装

课程中配置的WSL环境是最新的Ubuntu22.04版本,这个版本的软件商店内置的MySQL是8.0版本

所以我们需要额外的步骤才可以安装5.7版本的MySQL

安装操作需root权限,你可以:

  1. 通过 sudo su -,切换到root用户

    课程中选择这种方式操作

  2. 或在每一个命令前,加上sudo,用来临时提升权限

安装

  1. 下载apt仓库文件

    # 下载apt仓库的安装包,Ubuntu的安装包是.deb文件
    wget https://dev.mysql.com/get/mysql-apt-config_0.8.12-1_all.deb
    

    image-20221016094103315

  2. 配置apt仓库

    # 使用dpkg命令安装仓库
    dpkg -i mysql-apt-config_0.8.12-1_all.deb
    

    弹出框中选择:ubuntu bionic (Ubuntu18.04系统的代号是bionic,选择18.04的版本库用来安装)

    image-20221016094142343

    弹出框中选择:MySQL Server & Cluster

    image-20221016094216377

    弹出框中选择:mysql-5.7

    image-20221016094254397

    最后选择:ok

    image-20221016094306917

  3. 更新apt仓库的信息

    # 首先导入仓库的密钥信息
    apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 467B942D3A79BD29
    # 更新仓库信息
    apt update
    
  4. 检查是否成功配置MySQL5.7的仓库

    apt-cache policy mysql-server
    

    image-20221016094546943

    看到如图所示字样,即成功

  5. 安装MySQL5.7

    # 使用apt安装mysql客户端和mysql服务端
    apt install -f -y mysql-client=5.7* mysql-community-server=5.7*
    

    弹出框中输入root密码并选择ok,密码任意,课程中以123456代替

    image-20221016094941439

    再次输入root密码确认

    image-20221016094954505

  6. 启动MySQL

    /etc/init.d/mysql start			# 启动
    /etc/init.d/mysql stop			# 停止
    /etc/init.d/mysql status		# 查看状态
    

    image-20221016095259172

  7. 对MySQL进行初始化

    # 执行如下命令,此命令是MySQL安装后自带的配置程序
    mysql_secure_installation
    # 可以通过which命令查看到这个自带程序所在的位置
    root@DESKTOP-Q89USRE:~# which mysql_secure_installation
    /usr/bin/mysql_secure_installation
    
    1. 输入密码:

      image-20221016095458755

    2. 是否开启密码验证插件,如果需要增强密码安全性,输入y并回车,不需要直接回车(课程中选择直接回车)

      image-20221016095537716

    3. 是否更改root密码,需要输入y回车,不需要直接回车(课程不更改)

      image-20221016095621386

    4. 是否移除匿名用户,移除输入y回车,不移除直接回车(课程选择移除)

      image-20221016101232827

    5. 是否进制root用户远程登录,禁止输入y回车,不禁止直接回车(课程选择不禁止)

      image-20221016101324577

    6. 是否移除自带的测试数据库,移除输入y回车,不移除直接回车(课程选择不移除)

      image-20221016101404392

    7. 是否刷新权限,刷新输入y回车,不刷新直接回车(课程选择刷新)

      image-20221016101442459

  8. 登陆MySQL

    mysql -uroot -p
    # 输入密码即可登陆成功
    

    image-20221016101524498

至此,在Ubuntu上安装MySQL5.7版本成功。

MySQL8.0版本在Ubuntu(WSL环境)系统安装

课程中配置的WSL环境是最新的Ubuntu22.04版本,这个版本的软件商店内置的MySQL是8.0版本

所以直接可以通过apt安装即可

注意,课程是以WSL获得的Ubuntu操作系统环境。

如果你通过VMware虚拟机的方式获得了Ubuntu操作系统环境,操作步骤不用担心,和课程中使用WSL环境是完全一致的

安装操作需root权限,你可以:

  1. 通过 sudo su -,切换到root用户

    课程中选择这种方式操作

  2. 或在每一个命令前,加上sudo,用来临时提升权限

安装

  1. 如果已经安装过MySQL5.7版本,需要卸载仓库信息哦

    # 卸载MySQL5.7版本
    apt remove -y mysql-client=5.7* mysql-community-server=5.7*# 卸载5.7的仓库信息
    dpkg -l | grep mysql | awk '{print $2}' | xargs dpkg -P
    
  2. 更新apt仓库信息

    apt update
    
  3. 安装mysql

    apt install -y mysql-server
    
  4. 启动MySQL

    /etc/init.d/mysql start			# 启动
    /etc/init.d/mysql stop			# 停止
    /etc/init.d/mysql status		# 查看状态
    
  5. 登陆MySQL设置密码

    # 直接执行:mysql
    mysql
    
  6. 设置密码

    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
    
  7. 退出MySQL控制台

    exit
    
  8. 对MySQL进行初始化

    # 执行如下命令,此命令是MySQL安装后自带的配置程序
    mysql_secure_installation
    # 可以通过which命令查看到这个自带程序所在的位置
    root@DESKTOP-Q89USRE:~# which mysql_secure_installation
    /usr/bin/mysql_secure_installation
    
    1. 输入密码:

      image-20221016095458755

    2. 是否开启密码验证插件,如果需要增强密码安全性,输入y并回车,不需要直接回车(课程中选择直接回车)

      image-20221016095537716

    3. 是否更改root密码,需要输入y回车,不需要直接回车(课程不更改)

      image-20221016095621386

    4. 是否移除匿名用户,移除输入y回车,不移除直接回车(课程选择移除)

      image-20221016101232827

    5. 是否进制root用户远程登录,禁止输入y回车,不禁止直接回车(课程选择不禁止)

      image-20221016101324577

    6. 是否移除自带的测试数据库,移除输入y回车,不移除直接回车(课程选择不移除)

      image-20221016101404392

    7. 是否刷新权限,刷新输入y回车,不刷新直接回车(课程选择刷新)

      image-20221016101442459

  9. 重新登陆MySQL(用更改后的密码)

    mysql -uroot -p
    

    image-20221016110414182

至此,在Ubuntu上安装MySQL5.7版本成功。

RabbitMQ安装部署【简单】

简介

RabbitMQ一款知名的开源消息队列系统,为企业提供消息的发布、订阅、点对点传输等消息服务。

RabbitMQ在企业开发中十分常见,课程为大家演示快速搭建RabbitMQ环境。

安装

rabbitmq在yum仓库中的版本比较老,所以我们需要手动构建yum仓库

  1. 准备yum仓库

    # root执行
    # 1. 准备gpgkey密钥
    rpm --import https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc
    rpm --import https://packagecloud.io/rabbitmq/erlang/gpgkey
    rpm --import https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey# 2. 准备仓库文件
    vim /etc/yum.repos.d/rabbitmq.repo
    # 填入如下内容
    ##
    ## Zero dependency Erlang
    ##[rabbitmq_erlang]
    name=rabbitmq_erlang
    baseurl=https://packagecloud.io/rabbitmq/erlang/el/7/$basearch
    repo_gpgcheck=1
    gpgcheck=1
    enabled=1
    # PackageCloud's repository key and RabbitMQ package signing key
    gpgkey=https://packagecloud.io/rabbitmq/erlang/gpgkeyhttps://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc
    sslverify=1
    sslcacert=/etc/pki/tls/certs/ca-bundle.crt
    metadata_expire=300[rabbitmq_erlang-source]
    name=rabbitmq_erlang-source
    baseurl=https://packagecloud.io/rabbitmq/erlang/el/7/SRPMS
    repo_gpgcheck=1
    gpgcheck=0
    enabled=1
    # PackageCloud's repository key and RabbitMQ package signing key
    gpgkey=https://packagecloud.io/rabbitmq/erlang/gpgkeyhttps://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc
    sslverify=1
    sslcacert=/etc/pki/tls/certs/ca-bundle.crt
    metadata_expire=300##
    ## RabbitMQ server
    ##[rabbitmq_server]
    name=rabbitmq_server
    baseurl=https://packagecloud.io/rabbitmq/rabbitmq-server/el/7/$basearch
    repo_gpgcheck=1
    gpgcheck=0
    enabled=1
    # PackageCloud's repository key and RabbitMQ package signing key
    gpgkey=https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkeyhttps://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc
    sslverify=1
    sslcacert=/etc/pki/tls/certs/ca-bundle.crt
    metadata_expire=300[rabbitmq_server-source]
    name=rabbitmq_server-source
    baseurl=https://packagecloud.io/rabbitmq/rabbitmq-server/el/7/SRPMS
    repo_gpgcheck=1
    gpgcheck=0
    enabled=1
    gpgkey=https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey
    sslverify=1
    sslcacert=/etc/pki/tls/certs/ca-bundle.crt
    metadata_expire=300
    
  2. 安装RabbitMQ

    # root执行
    yum install erlang rabbitmq-server -y
    
    Installed:erlang.x86_64 0:23.3.4.11-1.el7           rabbitmq-server.noarch 0:3.10.0-1.el7
    
  3. 启动

    # root执行
    # 使用systemctl管控,服务名:rabbitmq-server
    systemctl enable rabbitmq-server		# 开机自启
    systemctl disable rabbitmq-server		# 关闭开机自启
    systemctl start rabbitmq-server			# 启动
    systemctl stop rabbitmq-server			# 关闭
    systemctl status rabbitmq-server		# 查看状态
    
  4. 放行防火墙,RabbitMQ使用5672、15672、25672 3个端口

    # 方式1(推荐),关闭防火墙
    systemctl stop firewalld		# 关闭
    systemctl disable firewalld		# 关闭开机自启# 方式2,放行5672 25672端口
    firewall-cmd --add-port=5672/tcp --permanent		# 放行tcp规则下的5672端口,永久生效
    firewall-cmd --add-port=15672/tcp --permanent		# 放行tcp规则下的15672端口,永久生效
    firewall-cmd --add-port=25672/tcp --permanent		# 放行tcp规则下的25672端口,永久生效
    firewall-cmd --reload								# 重新加载防火墙规则
    
  5. 启动RabbitMQ的WEB管理控制台

    rabbitmq-plugins enable rabbitmq_management
    
  6. 添加admin用户,并赋予权限

    rabbitmqctl add_user admin 'Itheima66^'
    rabbitmqctl set_permissions -p "/" "admin" ".*" ".*" ".*"
    rabbitmqctl set_user_tags admin administrator
    
  7. 浏览器打开管理控制台

    http://192.168.88.130:15672

    image-20221018154823983

至此,RabbitMQ已经安装完成了。

Redis安装部署【简单】

简介

redis是一个开源的、使用C语言编写的、支持网络交互的、可基于内存也可持久化的Key-Value数据库。

redis的特点就是:,可以基于内存存储数据并提供超低延迟、超快的检索速度

一般用于在系统中提供快速缓存的能力。

安装

  1. 配置EPEL仓库

    EPEL 的全称叫 Extra Packages for Enterprise Linux 。EPEL是由 Fedora 社区打造,为 RHEL 及衍生发行版如 CentOS、Scientific Linux 等提供高质量软件包的项目。装上了 EPEL之后,就相当于添加了一个第三方源。EPEL则为服务器版本提供大量的rpm包(yum程序所使用的程序安装包,类似Windows的exe),而且大多数rpm包在官方 repository 中是找不到的。

    # root执行
    yum install -y epel-release
    
  2. 安装redis

    # root执行
    yum install -y redis
    
  3. 启动redis

    # root执行
    # 使用systemctl管控,服务名:redis
    systemctl enable redis		# 开机自启
    systemctl disable redis		# 关闭开机自启
    systemctl start redis		# 启动
    systemctl stop redis		# 关闭
    systemctl status redis		# 查看状态
    
  4. 放行防火墙,redis使用端口6379

    # 方式1(推荐),关闭防火墙
    systemctl stop firewalld		# 关闭
    systemctl disable firewalld		# 关闭开机自启# 方式2,放行6379端口
    firewall-cmd --add-port=6379/tcp --permanent		# 放行tcp规则下的6379端口,永久生效
    firewall-cmd --reload	
    
  5. 进入redis服务

    # 执行redis-cli
    [root@centos ~]# redis-cli
    127.0.0.1:6379> set mykey hello
    OK
    127.0.0.1:6379> get mykey
    "hello"
    127.0.0.1:6379> 
    

至此,redis安装完成。

ElasticSearch安装部署

简介

全文搜索属于最常见的需求,开源的 Elasticsearch (以下简称 es)是目前全文搜索引擎的首选。

它可以快速地储存、搜索和分析海量数据。维基百科、Stack Overflow、Github 都采用它。

Elasticsearch简称es,在企业内同样是一款应用非常广泛的搜索引擎服务。

很多服务中的搜索功能,都是基于es来实现的。

安装

  1. 添加yum仓库

    # root执行
    # 导入仓库密钥
    rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch# 添加yum源
    # 编辑文件 
    vim /etc/yum.repos.d/elasticsearch.repo[elasticsearch-7.x]
    name=Elasticsearch repository for 7.x packages
    baseurl=https://artifacts.elastic.co/packages/7.x/yum
    gpgcheck=1
    gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
    enabled=1
    autorefresh=1
    type=rpm-md# 更新yum缓存
    yum makecache
    
  2. 安装es

    yum install -y elasticsearch
    
  3. 配置es

    vim /etc/elasticsearch/elasticsearch.yml# 17行,设置集群名称
    cluster.name: my-cluster# 23行,设置节点名称
    node.name: node-1# 56行,允许外网访问
    network.host: 0.0.0.0# 74行,配置集群master节点
    cluster.initial_master_nodes: ["node-1"]
    
  4. 启动es

    systemctl start | stop | status | enable | disable elasticsearch
    
  5. 关闭防火墙

    systemctl stop firewalld
    systemctl disable firewalld
    
  6. 测试

    浏览器打开:http://ip:9200/?pretty

    image-20221025085432335

相关文章:

【Linux系统基础】(2)在Linux上部署MySQL、RabbitMQ、ElasticSearch等各类软件

实战章节:在Linux上部署各类软件 前言 为什么学习各类软件在Linux上的部署 在前面,我们学习了许多的Linux命令和高级技巧,这些知识点比较零散,同学们跟随着课程的内容进行练习虽然可以基础掌握这些命令和技巧的使用,…...

HarmonyOS4.0系统性深入开发01应用模型的构成要素

应用模型的构成要素 应用模型是HarmonyOS为开发者提供的应用程序所需能力的抽象提炼,它提供了应用程序必备的组件和运行机制。有了应用模型,开发者可以基于一套统一的模型进行应用开发,使应用开发更简单、高效。 HarmonyOS应用模型的构成要…...

线下终端门店调研包含哪些内容

品牌渠道一般分为线上和线下,线上的价格、促销信息、店铺优惠机制等都可以通过登录查看,但是线下门店的数据则需要进店巡查,否则无法得到真实的店铺销售数据,当然也有品牌是靠线下的业务团队报备机制获得这些信息,但是…...

倾斜摄影三维模型数据在行业应用分析

倾斜摄影三维模型数据在行业应用分析 倾斜摄影三维模型数据是一种重要的地理信息资源,可以广泛应用于各个行业和场景,以解决不同领域的问题。以下将详细探讨几个典型的行业或场景,它们利用倾斜摄影三维模型数据解决问题的应用。 1、地理测绘…...

Apache Flink 进阶教程(七):网络流控及反压剖析

目录 前言 网络流控的概念与背景 为什么需要网络流控 网络流控的实现:静态限速 网络流控的实现:动态反馈/自动反压 案例一:Storm 反压实现 案例二:Spark Streaming 反压实现 疑问:为什么 Flink(bef…...

k8s学习 — (DevOps实践)第十三章 DevOps 环境搭建

k8s学习 — (DevOps实践)第十三章 DevOps 环境搭建 学习资料1 Gitlab1.1 安装 Gitlab1.2 页面配置1.3 配置 Secret1.4 为项目配置 Webhook1.5 卸载 2 Harbor2.1 安装 Harbor2.1 配置 Secret 3 SonarQube3.1 安装 SonarQube3.2 生成服务 token3.3 创建 We…...

Java_Stream流

一、JDK8新特性(Stream流) 接下来学习一个全新的知识,叫做Stream流(也叫Stream API)。它是从JDK8以后才有的一个新特性,是专业用于对集合或者数组进行便捷操作的。有多方便呢?我们用一个案例体…...

delphi中,tstringlist使用方法示例

delphi中,tstringlist使用方法示例 在 Delphi 中,TStringList 是一个常用的字符串列表类,它提供了许多用于处理字符串列表的方法。以下是一个示例,演示了如何在 Delphi 中使用 TStringList 类: program TStringListEx…...

【飞凌 OK113i-C 全志T113-i开发板】视频编解码测试

前言 本文测试OK113i-S开发板-视频编解码的功能 OK113i-S开发板是支持视频的编解码的,下面是官方介绍的编解码功能 T113-i 是一种为多媒体解码平台设计的高级应用处理器。T113-i 集成了64位玄铁C906 RISC-V CPU, 双核 Cortex - A7 CPU 和 HiFi4 DSP&a…...

全部没有问题 (一.5)

java mooc练习 基础练习: 进阶练习: final 赋值一次 局部 必须赋值 抽象类 多态测试 package com.book;public class moocDraft1 {static int variable1;public void fatherMethod(moocDraft1 a){System.out.println(variable);}public static void…...

C++归并排序详解以及代码实现

1. 介绍 归并排序(Merge Sort)是一种采用分治法(Divide and Conquer)策略的排序算法。该算法首先将已有序的子序列合并,得到完全有序的序列。在归并排序中,合并操作是将两个有序表合并成一个有序表的过程。…...

springboot整合JPA 多表关联 :一对多 多对多

补充一下自定义SQL 这是连表查询,可以任意查出字符,用Map接收 Testvoid test3() {JPAQueryFactory jpaQueryFactory new JPAQueryFactory(em);QStudent student QStudent.student;QMessage message QMessage.message;//constructor(StuMesDto.class, …...

Python 数据分析 Matplotlib篇 plt.rcParams 字典(第5讲)

Python 数据分析 Matplotlib篇 plt.rcParams字典(第5讲)         🍹博主 侯小啾 感谢您的支持与信赖。☀️ 🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ�…...

DeamonSet详解

目录 1.1 何为DaemonSet 1.2 DaemonSet 的 API 对象的定义 1.3 DaemonSet实践 1.3.1 创建 DaemonSet 对象 1.3.2 查看 DaemonSet 对象 1.3.3 DaemonSet 版本管理 1.3.4 DaemonSet 的容器镜像版本到 v2.2.0 1.1 何为DaemonSet 介绍DaemonSet我们先来思考一个问题&#x…...

TwIST算法MALTLAB主程序详解

TwIST算法MALTLAB主程序详解 关于TwIST算法的具体原理可以参考: 链接: https://ieeexplore.ieee.org/abstract/document/4358846 链接: https://blog.csdn.net/jbb0523/article/details/52193209 该算法的MATLAB源代码: 链接: http://www.lx.it.pt/~bi…...

Flutter 三: Dart

1 数据类型 数字(number) int double 字符串转换成 num int.parse(“1”) double.parse(“1”);double 四舍五入保留两位小数 toStringAsFixed(2) 返回值为stringdouble 直接舍弃小数点后几位的数据 可使用字符串截取的方式 字符串(string) 单引号 双引号 三引号三引号 可以输…...

redis基本用法学习(C#调用FreeRedis操作redis)

FreeRedis属于常用的基于.net的redis客户端,EasyCaching中也提供适配FreeRedis的包。根据参考文献4中的说法,FreeRedis和CsRedis算是近亲(都是GitHub中账号为2881099下的开源项目),因此其用法特别相似。FreeRedis的主要…...

Postman接口测试(超详细整理)

常用的接口测试工具主要有以下几种 Postman:简单方便的接口调试工具,便于分享和协作。具有接口调试,接口集管理,环境配置,参数化,断言,批量执行,录制接口,Mock Server, …...

【深入解析spring cloud gateway】12 gateway参数调优与分析

本节主要对网关主要的一些参数做一些解释说明,并用压测工具测试一下网关的接口,通过压测来验证参数配置是否合理 一、连接池参数 参数示例 spring:application:name: gatewaycloud:gateway:# http连接设置httpclient:# 全局的响应超时时间&#xff0c…...

Java继承,父类没有无参构造方法时,子类必须要显式调用父类的构造方法

在Java中,如果一个类没有定义任何构造函数,那么编译器会默认为这个类提供一个无参的构造函数。 这个隐式的构造函数在继承的时候,子类会在自己的构造方法里面默认的调用这个构造函数。 但是,如果我们在父类中定义了一个有参构造…...

Ubuntu 20.04使用Livox Mid-360

参考文章: Ubuntu 20.04使用Livox mid 360 测试 FAST_LIO-CSDN博客 一:Livox mid 360驱动安装与测试 前言: Livox mid360需要使用Livox-SDK2,而非Livox-SDK,以及对应的livox_ros_driver2 。并需要修改FAST_LIO中部…...

C语言之冒泡排序

其实排序有很多的方法,比如:冒泡排序,插入排序,快速排序,归并排序,选择排序等。今天来讲一下最简单的排序:冒泡排序。这种排序的方法效率极其低下。 假设有一个整型数组: int arr[…...

在Linux上安装NVM(Node Version Manager)

在Linux系统上,使用NVM(Node Version Manager)是管理和切换Node.js版本的一种便捷方式。以下是在Linux上安装NVM的步骤: 1. 下载并安装NVM 使用curl或wget下载并运行NVM的安装脚本。选择一种方式执行以下命令之一: …...

常用两种Linux命令生成器

在Linux中,可以使用多种命令来生成随机密码。以下是其中两种常用的命令: 1.pwgen:这个命令可以生成随机、无意义的但容易发音的密码。生成的密码可以只包含小写字母、大小写混合或数字。大写字母和数字会以一种便于记忆的方式放置&#xff0…...

【OAuth2】授权框架的四种授权方式详解

🎉🎉欢迎来到我的CSDN主页!🎉🎉 🏅我是Java方文山,一个在CSDN分享笔记的博主。📚📚 🌟推荐给大家我的专栏《OAuth 2》。🎯🎯 &#x1…...

AI数字人不间断直播是什么?数字人直播带货如何搭建?

随着电商行业的崛起,数字人直播成为了最为热门的直播方式之一。数字人直播利用AI技术创建出的数字人进行直播,给观众带来了全新的视觉体验。 一、AI数字人无限播(数字人SaaS系统VX:zhibo175)是什么? AI数字…...

真菌基因组研究高分策略(二):比较基因组揭示寄主外生菌根真菌基因组的动态进化

在表征外生菌根(ECM)真菌的“共生工具包”方面的研究已经取得了重大进展,但宿主特异性如何被编码到ECM真菌基因组中仍知之甚少。2021年发表于《New Phytologist》期刊的文章对ECM真菌宿主特异性和通用性进行了比较基因组分析,重点…...

uni-app之HelloWorld实现

锋哥原创的uni-app视频教程: 2023版uniapp从入门到上天视频教程(Java后端无废话版),火爆更新中..._哔哩哔哩_bilibili2023版uniapp从入门到上天视频教程(Java后端无废话版),火爆更新中...共计23条视频,包括:第1讲 uni…...

CVE-2023-49898 Apache incubator-streampark 远程命令执行漏洞

项目介绍 Apache Flink 和 Apache Spark 被广泛用作下一代大数据流计算引擎。基于大量优秀经验结合最佳实践,我们将任务部署和运行时参数提取到配置文件中。这样,带有开箱即用连接器的易于使用的 RuntimeContext 将带来更轻松、更高效的任务开发体验。它…...

即将来临的2024年,汽车战场再起波澜?

我们来简要概况一下11月主流车企的销量表现: 根据数据显示,11月吉利集团总销量29.32万辆,同比增长28%。这在当月国内主流车企中综合实力凌厉,可谓表现得体。而与吉利直接竞争的比亚迪,尽管数据未公布,但我们…...

Python 爬虫之下载视频(二)

爬取某Y的视频链接和标题 文章目录 爬取某Y的视频链接和标题前言一、基本思路二、程序解析阶段三、程序处理阶段总结 前言 这篇内容就简单给大家写个如何从网页上爬取某B主 主页 页面上所有的视频链接和视频标题。 这篇是基础好好看,下篇会根据这篇的结果做一个批…...

智能优化算法应用:基于原子轨道搜索算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于原子轨道搜索算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于原子轨道搜索算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.原子轨道搜索算法4.实验参数设定…...

[机器人-2]:开源MIT Min cheetah机械狗设计(二):机械结构设计

目录 1、四肢朝向的选择 2、电机布局形式的选择 3、电机的选型及测试(非常重要) 4、结构优化 5、尺寸效应 6、其他 1、四肢朝向的选择 机械狗的结构设计,第一个摆在我们面前的就说四肢的朝向问题,如下图,我们是…...

用友U8+CRM help2 任意文件读取漏洞复现

0x01 产品简介 用友U8 CRM客户关系管理系统是一款专业的企业级CRM软件,旨在帮助企业高效管理客户关系、提升销售业绩和提供优质的客户服务。 0x02 漏洞概述 用友 U8 CRM客户关系管理系统 help2接口处存在任意文件读取漏洞,攻击者通过漏洞可以获取到服…...

freeRTOS实时操作系统学习笔记

温馨提示:点击图片查看大图更清晰 —————————————————————————————↑↑↑上方资源下载后可获取xmind原文件。 1、freeRTOS移植和配置脑图 2、内核源码学习...

解决虚拟机卡顿、卡死、待机后不动的情况(真实有效

本人环境: VM workstation 17.5 ubuntu 22.04 虚拟机配置:4核 4g issue: 出现开机卡死不动运行一段时间,可能半小时不到,就页面卡死不动经常需要关机重启才解决,可能没有解决 1.配置虚拟化引擎 这一步我称…...

【MybatisPlus快速入门】(3)SpringBoot整合MybatisPlus 之 Lombok插件安装及MybatisPlus分页代码示例

目录 1.Lombok1.1 步骤1:添加lombok依赖 2.2 步骤2:安装Lombok的插件1.3 步骤3:模型类上添加注解2 分页功能2.1 步骤1:调用方法传入参数获取返回值2.2步骤2:设置分页拦截器2.3 步骤3:运行测试程序 之前我们已学习MyBatisPlus在代码示例与MyBatisPlus的简介,在这一节…...

SpaceDesk如何连接平板/PC(生产力副屏)

1、下载安装 分为安卓端和PC端,两个设备都需要安装对应的软件。 SpaceDesk官网 https://link.zhihu.com/?targethttp%3A//spacedesk.net/ 需要魔法上网。安装过程比较简单,无脑下一步即可。 我已经把安装包准备好了,如果不想自己找&#…...

61.SVN版本控制系统

SVN(Subversion)是一种集中式版本控制系统,它有一个中央仓库用于存储代码库的完整历史记录。相对于分布式版本控制系统(例如 Git),SVN 不支持本地仓库。 一、SVN 安装。 (1)在windo…...

操作系统 内存管理篇

一.程序的装入和链接 装入方式: 链接方式: 二.进程的内存映像 三.内存的分配 1.连续分配 分配方式: 2.不连续分配 分页:页面大小一致 引入快表(和 cache 处理思路一致) 升级到二级页表 分段:…...

深度学习中用来训练的train.py 探究学习2.0( 数据预处理)

数据预处理 下列代码为train.py中常见的一些数据处理方法 train_transform transforms.Compose([transforms.Resize((224, 224)),transforms.RandomVerticalFlip(),# 随机旋转,-45度到45度之间随机选transforms.RandomRotation(45),# 从中心开始裁剪transforms.C…...

vscode debug c++代码

需要提前写好CMakeLists.txt 在tasks.json中写好编译的步骤,即tasks,如cmake … 和make -j 在lauch.json中配置可执行文件的路径和需要执行tasks中的哪一个任务 具体步骤: 1.写好c代码和CMakeLists.txt 2.配置tasks.json 终端–>配置任务…...

HarmonyOS的功能及场景应用

一、基本介绍 鸿蒙HarmonyOS主要应用的设备包括智慧屏、平板、手表、智能音箱、IoT设备等。具体来说,鸿蒙系统是一款面向全场景(移动办公、运动健康、社交通信、媒体娱乐等)的分布式操作系统,能够支持手机、平板、智能穿戴、智慧屏、车机等多种终端设备…...

汽车级EEPROM 存储器 M24C64-DRMN3TP/K是电可擦除可编程只读存储器?它的功能特性有哪些?

M24C64-DRMN3TP/K是一款64 Kbit串行EEPROM汽车级设备,工作温度高达125C。符合汽车标准AEC-Q100 1级规定的极高可靠性。 该设备可通过一个高达1MHz的简单串行I2C兼容接口访问。 存储器阵列基于先进的真EEPROM技术(电可擦除可编程存储器)。M2…...

VS Code无法远程ubuntu

①windows下cmd中执行命令: ssh-keygen -t rsa -C "xxxxxx.com" ②ubuntu 下bash 命令 ssh-keygen -t rsa -C "xxxxxx.com" ③cat id_rsa.pub >> ~/.ssh/authorized_keys ④ C:\Users\Administrator\AppData\Roaming\Code\User\set…...

大数据开发职业规划

大数据开发职业规划 我的学历是双非本,在学校学习的是大数据专业,目前是在企业做大数据全栈的工作,爬虫,数仓,风控项目,etl开发都做 .................................................................…...

XxIJob入门-示例

一、部署 xxlJob (一) 下载地址, git clone 到本地。 http://gitee.com/xuxueli0323/xxl-job https://github.com/xuxueli/xxl-job (二) 插入 xxl_job 的sql脚本: 在项目的 /xxl-job/doc/db/tables_xxl_job.sql ,找到sql脚本&#xff0c…...

单挑力扣(LeetCode)SQL题:1549. 每件商品的最新订单(难度:中等)

相信很多学习SQL的小伙伴都面临这样的困境,学习完书本上的SQL基础知识后,一方面想测试下自己的水平;另一方面想进一步提升,却不知道方法。 其实,对于技能型知识,我的观点一贯都是:多练习、多实…...

Javacv-利用Netty实现推流直播复用(flv)

前言 上一篇文章《JavaCV之rtmp推流(FLV和M3U8)》介绍了javacv的基本使用,今天来讲讲如何实现推流复用。 以监控摄像头的直播为例,通常分为三步: 从设备获取音视频流利用javacv进行解码(例如flv或m3u8&am…...

cfa一级考生复习经验分享系列(十一)

理工科已经毕业,正在工作,毫无金融背景。一共准备了四个月,每天下班和周末抽时间看看。前三个月节奏比较松散,毕竟时不时有人叫我出去high,最后一个月认真看了看。 用到的资料 JC网课,官方Mock,…...