Skip to main content

AlmaLinux8安装软件

ElasticSearch 需要依赖到 JDK,由于我此次安装的是 Elasticsearch 8.17.0 版本,因此需要 JDK17+,包括 JDK17

注意:ElasticSearch 的安装不能使用 root 用户,必须切换到 普通用户

因此必须要安装 JDK

准备工作:

  • 下载离线安装包

我已准备好以下组件:

当然也可以在线从网上下载:

https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html

https://release.infinilabs.com/analysis-ik/stable/

https://www.elastic.co/downloads/past-releases/elasticsearch-8-17-0

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

一、AlmaLinux8安装JDK

1.1、上传到服务器

将上述三个文件上传到 /opt/software/ 目录下。

1.2、安装JDK17

1.2.1、解压

tar -zxvf /opt/software/jdk-17.0.12_linux-x64_bin.tar.gz -C /opt/module/

1.2.2、配置环境变量

编辑文件:

sudo vim /etc/profile.d/my_env.sh

填写如下内容:

# JDK
export JAVA_HOME=/opt/module/jdk-17.0.12
export PATH=$PATH:$JAVA_HOME/bin

1.2.3、刷新环境配置

sudo source /etc/profile.d/my_env.sh

查看版本:java -version

二、AlmaLinux8安装 Elasticsearch 8.17.0

2.1、解压缩

tar -zxvf elasticsearch-8.17.0-linux-x86_64.tar.gz -C /opt/module/

2.2、重命名

mv /opt/module/elasticsearch-8.17.0 /opt/module/elasticsearch

2.3、创建数据和日志目录

sudo mkdir -p /var/lib/elasticsearch /var/log/elasticsearch

2.4、安装 IK 分词器

unzip /opt/software/elasticsearch-analysis-ik-8.17.0.zip -d /opt/module/elasticsearch/plugins/analysis-ik

2.5、配置Elasticsearch

2.5.1、修改 elasticsearch.yml

# 备份文件
cp /opt/module/elasticsearch/config/elasticsearch.yml /opt/module/elasticsearch/config/elasticsearch.yml.bak

# 清空文件
cat /dev/null > /opt/module/elasticsearch/config/elasticsearch.yml

# 编辑文件
vim /opt/module/elasticsearch/config/elasticsearch.yml

直接写入如下内容:

cluster.name: my-es-cluster
node.name: node-1
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
network.host: 0.0.0.0
discovery.type: single-node
xpack.security.enabled: false # 禁用安全认证

2.5.2、设置权限

# 创建 普通用户,es 必须不能用 root 启动
sudo useradd elasticsearch

# 设置权限
sudo chown -R elasticsearch:elasticsearch /opt/module/elasticsearch /var/lib/elasticsearch /var/log/elasticsearch

2.5.3、创建 Systemd 服务

sudo vim /etc/systemd/system/elasticsearch.service

写入以下内容:

[Unit]
Description=Elasticsearch
After=network.target

[Service]
User=elasticsearch
Group=elasticsearch
Environment="ES_HOME=/opt/module/elasticsearch"
ExecStart=/opt/module/elasticsearch/bin/elasticsearch
Restart=always
LimitNOFILE=65536
LimitMEMLOCK=infinity

[Install]
WantedBy=multi-user.target

2.5.4、调整JVM内存

vim /opt/module/elasticsearch/config/jvm.options

修改为:

-Xms512m
-Xmx512m

2.5.5、启动服务

sudo systemctl daemon-reload
sudo systemctl enable elasticsearch # 设置开机自启服务
sudo systemctl start elasticsearch
sudo systemctl status elasticsearch # 检查状态

2.5.6、验证安装

curl -X GET "http://localhost:9200"
curl -X POST "http://localhost:9200/_analyze" -H 'Content-Type: application/json' -d'
{
"analyzer": "ik_smart",
"text": "中华人民共和国"
}'

三、AlmaLinux8安装Redis

3.1、首先,让我们先确保您的系统是最新的。

sudo dnf update
sudo dnf install epel-release

3.2、在 AlmaLinux 8 上安装 Redis。

Redis 现在包含在 CentOS 8 AppStream 存储库中,安装它就像在公园里散步一样。只需运行以下命令:

sudo dnf install redis

安装后,启动 Redis 服务器并启用systemd服务,以便服务器在重启后启动:

sudo systemctl start redis
sudo systemctl enable redis

为了验证Redis是否安装成功,我们可以运行以下命令:

redis-cli ping

3.3、配置 Redis。

默认安装只允许来自 localhost 或 Redis 服务器的连接并阻止任何外部连接。我们将为来自客户端机器的远程连接配置 Redis:

sudo vim /etc/redis.conf

找到绑定参数并将 127.0.0.1 替换为 0.0.0.0:

bind 0.0.0.0

保存并关闭并重新启动 Redis 服务器:

sudo systemctl restart redis

要登录到 Redis shell,请运行以下命令:

redis-cli

使用命令行客户端从远程主机连接到 Redis 服务器:redis-cli

3.4、配置防火墙。

打开防火墙端口以允许 Redis 传入流量:

sudo firewall-cmd --zone=public --permanent --add-service=redis
sudo firewall-cmd --reload

# 或者彻底关闭防火墙
sudo systemctl stop firewalld
sudo systemctl disable firewalld

四、AlmaLinux8在线安装MySQL

4.1、卸载旧版本(可选)

如果之前装过 mariadbmysql 相关包,建议先卸载:

sudo yum remove -y mariadb* mysql*

4.2、添加 MySQL 官方 Yum 仓库

sudo dnf install -y wget

4.3、查看所有与 mysql 相关的模块:

dnf module list mysql

你应该会看到类似下面的输出:

Name  Stream  Profiles                   Summary
mysql 8.0 client, server [d] MySQL Module
mysql 5.7 client, server MySQL Module

其中 8.0 旁边有 [d] 表示默认启用的模块。

4.4、禁用默认的 mysql 模块:

sudo dnf module disable -y mysql

4.5、继续安装

wget --no-check-certificate https://repo.mysql.com/mysql80-community-release-el8-1.noarch.rpm
sudo dnf install -y mysql80-community-release-el8-1.noarch.rpm

然后验证是否启用了 8.0 源:

sudo dnf repolist enabled | grep mysql

输出应包含 mysql80-community

4.6、安装 MySQL 8.0

sudo dnf install -y mysql-community-server --nogpgcheck

4.7、启动并设置为开机启动

sudo systemctl start mysqld
sudo systemctl enable mysqld

4.8、获取初始 root 密码

sudo grep 'temporary password' /var/log/mysqld.log

复制这个密码,比如:f2qkkPc,qS>a

4.9、安全初始化(设置新密码)

① 登录 MySQL(使用初始临时密码):

sudo grep 'temporary password' /var/log/mysqld.log
# 复制出来的临时密码后执行:
mysql -uroot -p

② 登录成功后,依次执行以下 SQL:

-- 降低密码复杂度要求(只对当前会话生效)
SET GLOBAL validate_password.policy = LOW;
SET GLOBAL validate_password.length = 6;

-- 修改 root 密码为 123456
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

③ 退出并用新密码测试登录:

exit
mysql -uroot -p123456

4.10、开启root用户远程访问

登录mysql后,使用 mysql database;

use mysql;
update user set host='%' where user='root';
flush privileges;

4.11、✅ (可选)第 8 步:修改配置文件(比如改端口、目录等)

配置文件默认在:

/etc/my.cnf

日志文件:

/var/log/mysqld.log

数据目录:

/var/lib/mysql

如你确实想自定义 datadirlogdir,可以改配置 + 修改权限,我也可以单独帮你写。