Centos7实现单服务器安装并开启多个Redis服务

本文涉及的产品
云数据库 Tair(兼容Redis),内存型 2GB
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
日志服务 SLS,月写入数据量 50GB 1个月
简介: Centos7实现单服务器安装并开启多个Redis服务

为什么要学Redis

目前刚上大三,准备暑假找实习了,但是目前所有的java岗位基本都要求会Redis,因此Redis就成了必备技能,但是大部分的Redis其实都是运行在服务器Linux上面的,因此需要了解如何在Linux上面如何部署运行Redis。

希望明年能成功找到实习。

安装

Redis-6.2.6下载

首先通过上面的链接下载Linux环境下的redis安装包.

获取安装包之后通过Xftp移动到/usr/local/src目录下

如下:

然后通过如下指令下载Redis所需gcc依赖.

yum install -y gcc tcl

之后解压安装包,操作方式如下

tar -zxvf redis-6.2.6.tar.gz

解压完毕之后进入redis的根目录

之后使用如下指令进行编译,如果没有出错那么安装成功.

make && make install

安装成功之后,默认的安装路径是在/usr/local/bin目录之下,进行查看

该目录以及默认配置到环境变量,因此可以在任意目录下运行这些命令。其中:

  • redis-cli:是redis提供的命令行客户端
  • redis-server:是redis的服务端启动脚本
  • redis-sentinel:是redis的哨兵启动脚本
    再次进入redis目录,然后使用redis-server就可以启动redis了

    当然这种启动方式是霸屏的,如果以这种方式启动那么就必须新开一个terminal来使用了,所以我们需要对redis.conf文件进行配置.

配置Redis

先使用Ctrl+C把redis结束.

然后进入redis的目录对配置文件进行拷贝,以防不时之需.

cp redis.conf redis.conf.bck

之后使用vim编辑器对配置文件进行编辑

vim redis.conf

如果对vim编辑器比较熟练的,就知道可以使用 / 对关键字进行搜索了.

首先输入/bind,然后回车之后使用n键来查找配置.

这里设置bind属性为0.0.0.0,使得所有主机可以访问当前服务器上的redis

重复一样的步骤,查找requirepass,这个配置用于设定redis的登录密码,当然,如果你注释掉它,那么默认就是无密码登录.

然后找到守护线程,开启

按照一样的方法,对如下属性进行设置

# 监听的端口
port 6379
# 工作目录,默认是当前目录,也就是运行redis-server时的命令,日志、持久化等文件会保存在这个目录
dir .
# 数据库数量,设置为1,代表只使用1个库,默认有16个库,编号0~15
databases 1
# 设置redis能够使用的最大内存
maxmemory 512mb
# 日志文件,默认为空,不记录日志,可以指定日志文件名
logfile "redis.log"

配置完毕上面的东西之后,使用如下指令对服务进行启动

redis-server redis.conf

可以发现控制台并没有被占据

然后使用如下指令停止服务

# 利用redis-cli来执行 shutdown 命令,即可停止 Redis 服务,
# 因为之前配置了密码,因此需要通过 -u 来指定密码
redis-cli -u redis shutdown

开机自启

开机自启要求在system文件下放入一个服务文件

我们使用如下指令创建一个

vi /etc/systemd/system/redis.service

之后在其中写入对应内容如下

[Unit]
Description=redis-server
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/bin/redis-server /usr/local/src/redis-6.2.6/redis.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target

这里ExecStart保持与我一样即可.

配置完毕之后保存并退出,然后使用如下指令重载系统服务

systemctl daemon-reload

之后查看是否能使用如下指令启动redis

# 启动
systemctl start redis
# 停止
systemctl stop redis
# 重启
systemctl restart redis
# 查看状态
systemctl status redis

如果启动成功,那么皆大欢喜,如果启动失败,可以直接输入redis-server来查看为什么报错

之后就可以尝试使用redis的客户端了

Redis安装完成后就自带了命令行客户端:redis-cli,使用方式如下:

redis-cli [options] [commonds]

其中常见的options有:

  • -h 127.0.0.1:指定要连接的redis节点的IP地址,默认是127.0.0.1
  • -p 6379:指定要连接的redis节点的端口,默认是6379
  • -a 123321:指定redis的访问密码

其中的commonds就是Redis的操作命令,例如:

  • ping:与redis服务端做心跳测试,服务端正常会返回pong.
    同时如果你在登录的时候设定了密码但是没有指定-a参数那么需要登录之后进行验证

    当然,很明显这种方式操作redis不方便,所以我的压缩包里面放置了目前主流的两种redis客户端远程操作工具.
    打开安装包然后进行下载之后进行如下操作即可

    然后就可以远程操作redis了,和使用DataGrip或者Navicat链接数据库都差不多,玩一玩就明白了

多服务开启

到上面位置,redis的基本配置是完毕了,但是为什么需要用一台redis服务器来开启多个redis呢?

如果学习过Redission的,那么应该自然会明白,这是为了实现Redission中的MulitiLock.

现在来进行单台虚拟机多Redis服务的配置.

首先进入Redis文件中,然后拷贝几份redis的配置文件如下.

cp redis.conf redis-6377.conf
cp redis.conf redis-6378.conf

这里你打算设置几个Redis服务你就拷贝几份文件

之后进入这些文件,修改他们的端口号,使得他们之间端口互不冲突

并且修改题目的pidname,使得他们的pid文件位置不同

日志文件也是同理

之后修改他们的数据库文件位置

之后使用如下的方法开启redis不同端口的服务

redis-server redis-6378.conf
ps aux | grep redis

之后就可以登录不同端口的redis客户端进行操作了

如果是SpringBoot程序就可以使用程序进行测试来判断是否配置多节点成功了.

可以发现两个节点都已经得到了锁

至此但服务器配置多环境Redis成功.


相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
23天前
|
弹性计算 监控 负载均衡
|
21天前
|
弹性计算 人工智能 数据安全/隐私保护
【手把手教你】如何免费畅快使用阿里云ECS搭建私有Overleaf论文写作服务
本文详细介绍如何利用阿里云ECS免费搭建私有Overleaf论文写作服务,包括ECS服务器的部署、Overleaf服务的安装、TexLive包的更新、XeLaTeX修复、中文字体支持及账号管理等步骤。通过这些操作,你可以实现免费且高效的多人协作论文写作,避免付费版本的高昂费用。适合需要频繁合作撰写论文的团队使用。
71 1
【手把手教你】如何免费畅快使用阿里云ECS搭建私有Overleaf论文写作服务
|
8天前
|
Ubuntu 网络协议 关系型数据库
超聚变服务器2288H V6使用 iBMC 安装 Ubuntu Server 24.04 LTS及后续系统配置
【11月更文挑战第15天】本文档详细介绍了如何使用iBMC在超聚变服务器2288H V6上安装Ubuntu Server 24.04 LTS,包括连接iBMC管理口、登录iBMC管理界面、配置RAID、安装系统以及后续系统配置等步骤。
|
2月前
|
监控 Java Linux
Linux系统之安装Ward服务器监控工具
【10月更文挑战第17天】Linux系统之安装Ward服务器监控工具
55 5
Linux系统之安装Ward服务器监控工具
|
27天前
|
Linux 数据库
Linux服务如何实现服务器重启后的服务延迟自启动?
【10月更文挑战第25天】Linux服务如何实现服务器重启后的服务延迟自启动?
138 3
|
2月前
|
存储 网络协议 Linux
AWS实操-EC2-创建购买linux(centos)EC2服务器
AWS实操-EC2-创建购买linux(centos)EC2服务器
|
2月前
|
弹性计算 应用服务中间件 网络安全
ECS服务器使用:SSL证书安装、配置和问题定位指南
本文简要介绍了SSL证书的生成与部署方法,包括使用OpenSSL生成自签名证书和从CA获取证书的步骤,以及在Apache和Nginx服务器上的配置方法。此外,还提供了测试证书是否生效的方法和常见问题的解决策略,帮助确保证书正确安装并解决调试过程中可能遇到的问题。
155 0
|
2月前
|
域名解析 安全 网络安全
阿里云服务器WordPress环境上安装SSL证书
阿里云服务器WordPress环境上安装SSL证书
|
存储 弹性计算 NoSQL
在ECS上搭建Redis
REmote DIctionary Server(Redis) 是一个由 Salvatore Sanfilippo 写的 key-value 存储系统,是跨平台的非关系型数据库。Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存、分布式、可选持久性的键值对(Key-Value)存储数据库,并提供多种语言的 API。Redis 通常被称为数据结构服务器,因为值(value)可以是字符串(String)、哈希(Hash)、列表(list)、集合(sets)和有序集合(sorted sets)等类型。
|
10天前
|
人工智能 弹性计算 编解码
阿里云GPU云服务器性能、应用场景及收费标准和活动价格参考
GPU云服务器作为阿里云提供的一种高性能计算服务,通过结合GPU与CPU的计算能力,为用户在人工智能、高性能计算等领域提供了强大的支持。其具备覆盖范围广、超强计算能力、网络性能出色等优势,且计费方式灵活多样,能够满足不同用户的需求。目前用户购买阿里云gpu云服务器gn5 规格族(P100-16G)、gn6i 规格族(T4-16G)、gn6v 规格族(V100-16G)有优惠,本文为大家详细介绍阿里云gpu云服务器的相关性能及收费标准与最新活动价格情况,以供参考和选择。
下一篇
无影云桌面