单机软件在Linux上的安装

mysql安装

5.7版本

  • mysql的程序在centos官方的库中是没有的,需要切换到淘宝的镜像,这个前面有教程
  • 或者配置mysql的源
yum -y install rpm
rpm --import https://repo.mysql.Com/RPM-GPG-KEY-mysqL-2022
rpm -Uvh http://repo.mysql.com//mysql57-community-release-el7-7.noarch.rpm

安装mysql社区版

yum -y install mysql-community-server

启动mysqld并设置开启自启

systemctl start mysqld
systemctl enable mysqld
systemctl status mysqld

在这里插入图片描述

降低密码要求

set global validate_password_policy=LOW;
set global validate_password_length=4;

设置新密码

ALTER USER 'root'@'LocaLhoSt'IDENTIFIED BY'密码';

授予远程权限,并且刷新配置

grant all privileges on *.* to root@"%" identified by 'root' with grant option;n;
flush privileges;

查看一下端口

netstat -anp | grep 3306

在这里插入图片描述

8.x版本

参考连接:https://blog.csdn.net/studio_1/article/details/128345934

官网下载

https://dev.mysql.com/downloads/

  • 下载的时候要注意个事情,mysql的glibc的版本和你系统的glibc版本要一致,不然会报错 好多文件找不到
  • 网上好多教程:软链接的,升级glibc,我都没用(嫌麻烦),我直接把mysql8卸载了,重新装一遍正确的版本(移除对应的文件就可以了,因为你没有安装成功的话,估计也不会有啥系统残留),参考链接:https://blog.csdn.net/m0_68292446/article/details/133694672

在这里插入图片描述

查一下你的Linux现在的版本

rpm -qa | grep glibc

下载指定版本的tar包

在这里插入图片描述

卸载残留

如果你的linux上之前安装过mysql,一定会有一些数据,先卸载一下
例如:我之前安装过这个玩意,现在反向操作卸载就行了

这是当时安装的命令

yum -y install mysql-community-server

卸载的命令

yum -y remove mysql-community-server

如果不清楚,查一下有没有文件,就知道之前安装过没有

  • 出来很多结果就是安装过
  • 没有数据就是没有安装过
rpm -qa|grep -i mysql

把服务停了

  • 一个是停mysql5的,另一个是mysql8,我估计你也分不清,统统停了就好
service mysqld stop
service mysql stop

找文件,把找到的文件也都删了

find / -name mysql

好多文件,慢慢删吧

rm -rf  上面的文件

在这里插入图片描述

解压

通过finalshell 拖到指定文件夹中/usr/MYSQL/,然后解压(我嫌文件名长,我改过名字)

tar -xvJf mysql-8.0.39.tar.xz

解压后的文件名还是长,再改一下

mv mysql-8.0.39-linux-glibc2.28-x86_64 mysql-8.0.39

创建data文件夹

进入你安装的mysql根目录,mkdir一下新的data文件夹

mkdir data

在这里插入图片描述

创建用户和用户组

一般会提示你已经创建过了

groupadd mysql
useradd -g mysql mysql

授权(改变一下文件所属用户组)

把根目录的所属用户改一下

chown -R “mysql组名”.“mysql用户名” “mysql安装根目录”
chown -R mysql.mysql /usr/MYSQL/mysql-8.0.39

在这里插入图片描述

初始化mysql

使用一些配置,初始化mysql

  • 一定要进入bin目录,mysqld文件在bin目录下,不然报错
  • –lower-case-table-names=1 即设置不区分表明大小写,这在后面启动的时候会是一个坑,需要你更改/etc/my.cnf
./mysqld --user=mysql --basedir=/usr/MYSQL/mysql-8.0.39 --datadir=/usr/MYSQL/mysql-8.0.39/data --lower-case-table-names=1 --initialize

改一下配置文件

  • /etc/my.cnf 是默认配置文件,如果没有你就建一个
  • 如果上面你配置了大小写,这里也要配置一下
vim /etc/my.cnf
port=3306
basedir=/usr/MYSQL/mysql-8.0.39/  # MySQL根目录
datadir=/usr/MYSQL/mysql-8.0.39/data/  # MySQL的data目录
socket=/tmp/mysql.sock
character-set-server=UTF8MB4
symbolic-links=0# 这是一个坑,前面如果配置了大小写,这行是必须的
lower_case_table_names = 1#解决“java.sql.SQLException: Expression #1 of ORDER BY clause is not in SELECT list,references column”
sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'

添加服务

进入mysql的根目录

cp -a ./support-files/mysql.server /etc/init.d/mysql

在这里插入图片描述

授权并添加服务

chmod +x /etc/init.d/mysql
chkconfig --add mysql

在这里插入图片描述

启动mysql

启动完mysql,再看一下启动成功没有

service mysql start
service mysql status

要是启动不了,看一下配置文件是不是配置你自己的文件路径

在这里插入图片描述

  • 报这个错是因为没有配置大小写,回去配置vim /etc/my.cnf,加一行大小写配置
  • 也有可能你没有data的权限
vim /etc/my.cnf
lower_case_table_names = 1
chmod -R 755 /usr/MYSQL/mysql-8.0.39/data

在这里插入图片描述
在这里插入图片描述

配置软连接,可以全局使用mysql命令

 ln -s “你的MySQL根目录/bin/mysql” /usr/bin ln -s /usr/MYSQL/mysql-8.0.39/bin/mysql /usr/bin

配置之后,进入user/bin ,再次看就会发现多了一个软链接文件
在这里插入图片描述

改密码

  • 一般来说你的第一次进入,使用的临时密码
  • 去指定文件 /var/log/ mysqld.log中找临时密码
  • 如果以前安装过,可能会有历史记录,找最新的一条
cat /var/log/mysqld.log | grep password

在这里插入图片描述

登录

mysql -uroot -p

改密码

alter user 'root'@'localhost' identified by 'root';

生效

flush privileges;

检测一下

在mysql中输入命令

show databases

在这里插入图片描述

Tomcat安装

两个步骤:

  • 安装jdk
  • 安装Tomcat

安装jdk

下载地址: https://www.oracle.com/sg/java/technologies/downloads/
在这里插入图片描述

创建一个所有环境的安装目录,解压

mkdir -p /export/server

将下载的tar.gz文件拖到这个文件夹下面
在这里插入图片描述

解压(如果就在server目录下解压的,就不需要-C选项)

tar -zxvf jdk-8u201-linux-x64.tar.gz -C /export/server/

在这里插入图片描述
在这里插入图片描述

创建软链接

  • 为什么不直接删除?因为以后可能需要多个jdk版本,你只需切换jdk指向的软链接就可以了

在这里插入图片描述

配置环境变量

同样是在java/bin目录下执行,得到的java版本不一样,为什么?

 java -version./java -version

在这里插入图片描述

原因:

  • java 执行的命令来自于/bin/java
  • ./java 执行的命令来自于 /export/server/bin/java

在这里插入图片描述

将jdk的安装目录配置到PATH环境变量中

  • 新增JAVA_HOME 环境变量
  • 修改 PATH变量

找到系统文件,新增两行

vim /etc/profile
export JAVA_HOME=/export/server/jdk
export PATH=$PATH:$JAVA_HOME/bin

激活配置文件

source /etc/profile

查看一下环境变量是否成功加上了

echo $PATH

在这里插入图片描述

  • 删除原有的java
  • 软链接过去一个新的java
  • 为什么不直接删除呢?因为防止别的地方使用usr/bin/java
rm -f /usr/bin/java
ln -s /export/server/jdk/bin/java /usr/bin/java

现在使用的就是我们配置的java,而不是系统自带的(因为已经被我们删除了)

在这里插入图片描述

配置Tomcat

因为Tomcat是提供给外部使用的,可能存在被黑掉的风险,建议新建一个用户,专门适用于Tomcat服务,即使被黑了,Tomcat用户的权限不高,不会造成大范围的损失

wget https://archive.apache.org/dist/tomcat/tomcat-10/v10.0.27/bin/apache-tomcat-10.0.27.tar.gz

解压文件

tar -zxvf /home/tomcat/apache-tomcat-10.0.27.tar.gz -C /export/server/

构建软链接

ln -s apache-tomcat-10.0.27 tomcat
  • 这些都是root用户的权限,我们后续需要使用Tomcat用户启动Tomcat应用
  • 需要将文件的权限归还给 Tomcat用户
chown -R tomcat:tomcat tomcat
chown -R tomcat:tomcat apache-tomcat-10.0.27

在这里插入图片描述

进入bin目录,记得./不让从~目录下开始查找,会报错

./startup.sh 

在这里插入图片描述

netstat -anp|grep 8080

一般来说,这时候你是访问不通的,防火墙开了,而且没有开放8080端口

  • 开放80801端口
  • 或者直接关闭防火墙(简单粗暴)
systemctl stop firewalld.service 
systemctl status firewalld.service 

在这里插入图片描述

  • http://192.168.88.130:8080/ 访问这个链接,因为Tomcat的默认端口是8080
  • 出现这个页面就代表访问成功了

在这里插入图片描述

安装nginx数据

安装yum依赖程序

yum install -y yum-utils

手动添加 nginx的源到yum的仓库

  • 我们可以在这里看到 之前配置的mysql的库
cd /etc/yum.repos.d

在这里插入图片描述

新增一个配置文件,加入下面的内容

vim nginx.repo
# 填入如下内客并保存退出
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true[nginx-mainline]
name=ngink mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.prg/keys/nginx_signing.key
module_hotfixes=true

安装nginx

yum -y install nginx

可能会启动失败

在这里插入图片描述
在这里插入图片描述

  • 这是因为之前安装过httpd命令(这个服务也是监听80端口的)
  • 关闭这个服务即可
systemctl stop httpd.service
systemctl start nginx
systemctl status nginx
systemctl enable nginx

如果没有关闭防火墙,关闭一下防火墙

systemctl stop firewalld.service

访问这个80端口,看到这个页面就可以了

在这里插入图片描述

安装rabbitmq

rabbitmq在yum中的版本比较老,使用新版本进行安装

准备rabbitmq的库

使用root权限执行命令,准本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
[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

安装rabbitmq

yum install erlang rabbitmq-server -y

在这里插入图片描述

在这里插入图片描述

启动rabbitmq

相关命令

# root执行
# 使用systemctl管控,服务名:rabbitmq-server
systemctl enable rabbitmq-server		# 开机自启
systemctl disable rabbitmq-server		# 关闭开机自启
systemctl start rabbitmq-server			# 启动
systemctl stop rabbitmq-server			# 关闭
systemctl status rabbitmq-server		# 查看状态

在这里插入图片描述

防火墙放行

放行防火墙,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								# 重新加载防火墙规则

启动控制台

rabbitmq-plugins enable rabbitmq_management

在这里插入图片描述

新增用户

新增一个root用户,并且root用户的权限是管理员

rabbitmqctl add_user root 'root'
rabbitmqctl set_permissions -p "/" "root" ".*" ".*" ".*"
rabbitmqctl set_user_tags root administrator

访问一下控制台

http://192.168.88.130:15672

在这里插入图片描述

至此,完成了rabbitmq的安装

安装redis

简介

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

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

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

配置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

在这里插入图片描述

安装redis

yum install -y redis

在这里插入图片描述

相关命令

# root执行
# 使用systemctl管控,服务名:redis
systemctl enable redis		# 开机自启
systemctl disable redis		# 关闭开机自启
systemctl start redis		# 启动
systemctl stop redis		# 关闭
systemctl status redis		# 查看状态

在这里插入图片描述

防火墙放行

放行防火墙,redis使用端口6379

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

访问一下redis

redis-cli
set mykey hello
get mykey

在这里插入图片描述

至此,redis安装完成。

安装Elasticsearch

  • 全文搜索属于最常见的需求,开源的 Elasticsearch (以下简称 es)是目前全文搜索引擎的首选。
  • 它可以快速地储存、搜索和分析海量数据。维基百科、Stack Overflow、Github 都采用它。
  • Elasticsearch简称es,在企业内同样是一款应用非常广泛的搜索引擎服务。
    很多服务中的搜索功能,都是基于es来实现的。

配置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 makecache

安装

yum install -y elasticsearch

配置

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"]

相关命令

systemctl start | stop | status | enable | disable elasticsearch

关闭防火墙

systemctl stop firewalld
systemctl disable firewalld

访问地址

http://192.168.88.130:9200/?pretty

在这里插入图片描述

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

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

相关文章

Linux基础---08软件的安装

安装方式优缺点编译安装自由定制,但较为繁琐rmp安装安装简单,但需要自己解决依赖,不支持定制yum安装自动解决rmp依赖,但不支持定制(用的更多) 下面就具体介绍三大安装方式: 一.编译安装 用Li…

IBM撤出中国区相关研发工作 裁员规模超千人

经济观察网 记者 钱玉娟 8月26日上午10点半,IBM中国举行了一场只有3分钟的全员会。IBM全球企业系统开发部副总裁Jack Hergenrother在会上宣布,IBM基础设施决定撤出IBM中国系统中心(CSL)与IBM中国开发中心(CDL&#xff…

热门数据恢复软件大盘点

现在大家的数据都喜欢存放在一些电子设备里保存吧。这样既方便存放,也方便我们查找。但是这些设备可能因为病毒、误删除等原因造成数据的丢失。这篇文章我将介绍几款类似易我数据恢复软件的数据恢复工具,减少为数据丢失给我们造成损失。 1.FOXIT数据恢复…

3. Python计算水仙花数

Python计算水仙花数 一、什么是水仙花数? 百度答案 二、怎样使用Python计算水仙花数? 这里需要for循环,if判断,需要range()函数,需要知道怎么求个位数,十位数,百位数… 1. For循环 语句结…

通信工程学习:什么是SNI业务节点接口

SNI:业务节点接口 SNI业务节点接口,全称Service Node Interface,是接入网(AN)和一个业务节点(SN)之间的接口,位于接入网的业务侧。这一接口在通信网络中扮演着重要的角色&#xff0c…

智慧农业数据集(一)

目录 葡萄叶片病虫害害数据集 茄子果实病虫害数据集 81类水果数据集 小麦叶片病虫害数据集 番茄叶片病害数据集 草莓叶片病虫害数据集 水稻叶片病虫害数据集 菠萝成熟度数据集 10类水果数据集 棉花叶片病虫害数据集 棉花成熟度数据集 柑橘叶片病虫害数据集 苹果新…

离谱碾压!奇安信中标:高出第二名近70分!

2024年08月09日,广东省政务服务和数据管理局,近日发布了网络安全第三方服务(2024年)项目之关基检查及重要政务应用安全检查服务招标公告! 预算金额:2,896,200.00元,其中安全检查服务包&#xf…

网络原理2-网络层与数据链路层

目录 网络层数据链路层 网络层 网络层做的工作: 1、地址管理–>IP地址 2、路由选择–>数据包传输的路径规划 网络层主要的协议就是IP协议 IP协议的报头结构: 4位版本: 有两个取值,4表示IPv4,6表示IPv6&am…

【DVWA】——File Upload(文件上传)

📖 前言:文件上传漏洞是由于对上传文件未作过滤或过滤机制不严(文件后缀或类型),导致恶意用户可以上传脚本文件,通过上传文件可达到控制网站权限的目的。 目录 🕒 1. Low🕒 2. Mediu…

嵌入式单片机程序运行基本机理

1. 程序各种要素说明 大家好,今天用一个最简单的程序跟大家讲清楚程序的构成。 1.1. 概述 硬件首先要知道硬件的组成。 在前面章节我们说过,芯片包含Flash和RAM。 他们虽然不是相同的东西,但是都属于同一个地址空间,32位芯片的地址空间大小是4G。 比如ST32,FLASH通常从…

[云服务器10]使用alist搭建云盘系统

hello大家好啊,今天为大家带来的是使用alist搭建一个网盘系统! 首先我们得明确,人家阿里云盘,百度云盘都是存了PB级的数据,然后我大概算了一下,成本约为 2 554 880 2\space554\space880 2 554 880RMB每个月…

3.1 通信协议

通信协议 通信的目的:将一个设备的数据传送到另一个设备,扩展硬件系统 通信协议:制定通信的规则,通信双方按照协议规则进行数据收发 全双工:发送与接收互不影响 (如串口通信有两根数据线 tx,rx) 半双工 &#xff1…

155K Star,Python 入门到进阶最佳学习资源

Hi,骚年,我是大 G,公众号「GitHub 指北」会推荐 GitHub 上有趣有用的项目,一分钟 get 一个优秀的开源项目,挖掘开源的价值,欢迎关注。 导语 如果你正在寻找一个全面、系统、深入的 Python 学习项目&#…

CSP-CCF★★★201903-2二十四点★★★

目录 一、问题描述 二、解答 方法一:穷举法(只列举了一部分) 方法二:中缀表达式直接求值,两个栈,一个存放数值,一个存放符号 方法三:将中缀表达式转换为后缀来计算注意&#xff…

【Git】初识Git

本篇文章的环境是在 Ubuntu/Linux 环境下编写的 文章目录 版本控制器Git 基本操作安装 Git创建 Git 本地仓库配置 Git认识工作区、暂存区、版本库添加文件修改文件版本回退撤销修改删除文件 版本控制器 在日常工作和学习中,老板/老师要求我们修改文档,…

C++11新特性学习

C11 1. C11新特性 自动类型推导(auto)智能指针(提供更安全和更高效的内存管理)移动语义和右值引用 (move语义 &&,使得对象移动而非拷贝,在处理大量数据时提高程序性能)Lambda 表达式(…

胤娲科技:解锁AI奥秘——产品经理的智能进化之旅

当AI不再是遥不可及的科幻 想象一下,你走进一家未来感十足的咖啡厅,无需言语,智能咖啡机就能根据你的偏好调制出一杯完美的拿铁; 打开手机,AI助手不仅提醒你今天有雨,还贴心推荐了最适合雨中漫步的音乐列表…

如何正确使用MMPI量表进行测试?

1、需要初中以上学历,能对测试题准确的理解。 2、应在安静、无干扰的环境中进行,确保自己能够集中注意力完成测试。 3、尽量不要选择“无法回答”这个选项,当然如果确实有无法回答的,也可以选,但是总数不要超过22个。…

java中,怎么使用反射?

在Java中,反射(Reflection)是指在运行时能够获取类、方法、字段、构造函数等信息,并且能够在运行时动态调用类的方法、创建对象或访问字段。Java中的反射机制主要通过java.lang.reflect包中的类来实现。反射可以为开发者提供强大的…

【STM32系统】基于STM32设计的SD卡数据读取与上位机显示系统(SDIO接口驱动、雷龙SD卡)——文末资料下载

基于STM32设计的SD卡数据读取与上位机显示系统 演示视频: 基于STM32设计的SD卡数据读取与上位机显示系统 简介:本研究的主要目的是基于STM32F103微控制器,设计一个能够读取SD卡数据并显示到上位机的系统。SD卡的数据扇区读取不仅是为了验证存…