Windows&Linux&MacOS如何快速搭建Redis

本文涉及的产品
云原生内存数据库 Tair,内存型 2GB
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Redis 版,经济版 1GB 1个月
简介: 本文主要介绍在Windows、macOS、Linux系统下,分别快速安装redis技巧。

前言

Redis是一种NoSQL(not-only sql,泛指非关系型数据库)的数据库。由 C 语言开发的一个开源的高性能键值对(key-value)的内存数据库,可以用作数据库、缓存、消息中间件等。

官网地址:https://redis.io/

中文官方地址:http://www.redis.cn/

Redis常见的数据类型有:

  • String: 字符串
  • Hash: 哈希
  • List: 列表
  • Set: 集合
  • Sorted Set: 有序集合

在日常的开发或测试过程中,经常会接触到Redis。工欲善其事必先利其器,下面简单介绍一下Redis在Windows、Linux、Mac上的快速搭建过程。

一、Windows下安装Redis

Redis 支持 32 位和 64 位。根据系统平台的实际情况选择即可。下载地址:https://github.com/tporadowski/redis/releases

配置好环境变量,切换到 redis 目录下运行:

redis-cli.exe -h127.0.0.1 -p6379

二、Linux下安装Redis

1.手工方式安装

下载地址:http://redis.io/download,下载最新稳定版本。以6.0.6版本为例:

wget http://download.redis.io/releases/redis-6.0.6.tar.gz

Redis-6.0.6版本安装步骤如下:

① 关闭防火墙

systemctl stop firewalld 
systemctl disable firewalld

② 升级GCC

CentOS默认安装的GCC是4.8.5的版本,Redis6依赖gcc 5以上的版本

yum install gccgcc-vyum -y install centos-release-scl  # 升级到9.1版本 yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils 
scl enable devtoolset-9 bash

③ 解压安装Redis

tar xzf redis-6.0.6.tar.gz 
cd redis-6.0.6 
make & make install

make完后 redis-6.0.6目录下会出现编译后的redis服务程序redis-server,还有用于测试的客户端程序redis-cli,两个程序位 于安装目录 src 目录下。

④ 配置环境变量

vi /etc/profile  # 编辑配置文件,添加环境变量信息source /etc/profile  # 重载配置文件

添加配置文件的内容:

exportREDIS_HOME=/home/redis-6.0.6 exportPATH=$PATH:$REDIS_HOME/src

⑤ 修改配置文件redis.conf

bind 192.168.1.123  # 默认为127.0.0.1,即本地回环地址,只能通过本机的客户端连接,而无法通过远程连接。bind设置为本机IP地址,允许任意计算机通过此IP地址连接,如本机有两个IP1和IP2,当bind设置了IP1时,那么只能通过IP1连接redis,而通过IP2无法连接。

daemonize yes # 后台启动

protected‐mode no # 保护模式,默认为yes,开启状态,为了限制公网访问redis,加强安全性。它的启用条件有:① protected mode设置为yes;② 没有bind ip;③ 没有设置访问密码;(以上条件必须同时满足,否则不会开启保护机制)

⑥ 启动redis服务

cd src
./redis-server  # 以默认方式启动Redis./redis-server ../redis.conf  # 指定配置文件方式启动Redis

⑦ 启动Redis客户端

./redis-cli  # 以默认方式启动Redis客户端,127.0.0.1、6379./redis-cli -h192.168.1.123 -p6379# 启动Redis客户端,并指定连接的主机和端口号

⑧ 测试Redis连通性

通过一段Python代码简单测试redis连通性:

importredisclassRedisHandler:
def__init__(self, host, port=6379, db=0):
self.client=redis.StrictRedis(host=host, port=port, db=db)  # 生成客户端连接,StrictRedis()默认使用连接池,不必再单独使用ConnectPooldefset_string(self, name: str, value, ex=None, px=None, nx=False, xx=False) ->None:
"""        缓存中写入str(单个)        :param name: 缓存名称        :param value: 缓存值        :param ex: 过期时间(秒)        :param px: 过期时间(毫秒)        :param nx: 如果设置为True,则只有name不存在时,当前set操作才执行(新增)        :param xx: 如果设置为True,则只有name不存在时,当前set操作才执行(修改)        :return:        """self.client.set(name, value=value, ex=ex, px=px, nx=nx, xx=xx)
defget_key(self, name):
"""读取缓存"""print(self.client.get(name))
if__name__=='__main__':
redis=RedisHandler(host='192.168.1.123')
redis.set_string("test1", 0)
redis.get_key("test1")

2.shell脚本方式安装

① redis_server_install.sh 脚本内容与解析

#!/bin/shcur_pass=`pwd`# 定义当前所在路径的变量redis_install_long=$cur_pass"/redis_log"echo"==`date`==REDIS INSTALL START====" >>$redis_install_longif [ $#-ne2 ];then
echo"==`date`==INSTALL REDIS SERVER PARA ERROR====" >>$redis_install_longexit-1fiecho"PARA NUMBER [$@]" >>$redis_install_longif [ -d"/usr/local/redis" ];then
echo"==`date`==REDIS INSTALL EXISTS====" >>$redis_install_longexit0fidbserverip=$1# 定义传入的参数,执行时传入本机地址rm-fr redis-6.0.8  # 删除原有的解压目录`tar zxf redis-6.0.8.tar.gz`# 解压缩cd redis-6.0.8
makePREFIX=/usr/local/redis install
cp utils/redis_init_script  /etc/rc.d/init.d/redis
if [ ! -d"/etc/redis/" ];then
mkdir-p /etc/redis/  # 创建Redis配置文件目录fised s/dbserverip/$dbserverip/g -i redis.conf  # 替换配置文件中的dbserveripif [ ! -d"/home/jumploo/data/" ];then
mkdir-p /home/jumploo/data/  # 创建Redis数据目录ficp redis.conf  /etc/redis/6379.conf
echo"==`date`==REDIS INSTALL SUCCESS====" >>$redis_install_long/etc/init.d/redis start > /dev/null 2>&1  &  # 启动Redis

② 安装Redis

chmod+x redis_server_install.py
./redis_server_install.py 192.168.1.123

三、MacOS安装Redis

1.安装gcc

brew install gcc

gcc安装后可在/usr/bin目录中查看到

2.将编译工具从clang改为gcc

由于Mac系统默认使用的是clang,在make时会报错,因此需要将编译工具从clang改为gcc

① 打开配置文件:vi ~/.zprofile,并在末尾添加如下内容:

由于安装的是gcc-11版本,因此需要配置为11

② 重新加载配置文件:source ~/.zprofile

③ 此时再通过gcc --version命令查看版本时,显示的就是gcc的相关信息,而不再是clang了

3.下载解压Redis

通过wget命令在线下载,或直接解压附件安装包,或到官网http://redis.io/download下载均可,通过wget命令下载的话需要先安装wget工具

① 安装wget工具

brew install wget

② 下载redis

brew install wgetwget http://download.redis.io/releases/redis-6.0.6.tar.gz

③ 解压Redis

tar -xvf redis-6.0.6.tar.gz 
cd redis-6.0.6


④ make

make

4.启动Redis

./redis-server

启动成功会显示如下图标:

5.redis安装过程中常见报错及解决办法

① make install 报错”install: /usr/local/bin/redis-server: Permission denied

尝试使用sudo make install命令代替make install,安装成功后,系统会自动将redis-6.0.6/src下的相关脚本复制到/usr/local/bin下

相关实践学习
基于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
相关文章
|
13天前
|
Ubuntu Linux C语言
【opencv】opencv在windows和linux的应用
【opencv】opencv在windows和linux的应用
|
19天前
|
运维 Linux 网络安全
跨平台SSH文件传输:Linux与Windows环境下的实践指南
本文介绍了在Linux和Windows之间使用SCP、SecureCRT及PuTTY工具集进行文件传输的方法。在Linux中,利用SCP命令进行文件下载、上传及目录传输。在Windows环境下,PSFTP和PSCP提供类似功能,而SecureCRT作为SSH客户端,支持设置上传下载目录并进行文件传输。掌握这些工具的使用可提升跨平台运维效率。
|
2天前
|
Linux 数据安全/隐私保护 Windows
pscp 将Linux服务器上的文件同步到Windows服务器上
【6月更文挑战第28天】pscp 将Linux服务器上的文件同步到Windows服务器上
10 0
|
25天前
|
Ubuntu Linux Docker
windows 安装docker 安装Ubuntu linux
windows 安装docker 安装Ubuntu linux
66 3
|
24天前
|
监控 Unix Linux
windows和linux实时监控文本内容的命令
windows和linux实时监控文本内容的命令
25 1
|
3天前
|
运维 网络协议 Linux
Linux与Windows下追踪网络路由:traceroute、tracepath与tracert命令详解
Linux与Windows下追踪网络路由:traceroute、tracepath与tracert命令详解
7 0
|
26天前
|
机器人 Linux 数据安全/隐私保护
一键部署 botpress windows和linux 傻瓜式安装智能对话机器人 chatbot
一键部署 botpress windows和linux 傻瓜式安装智能对话机器人 chatbot
26 0
一键部署 botpress windows和linux 傻瓜式安装智能对话机器人 chatbot
|
6天前
|
Linux Windows
windows和linux安装Erlang
windows和linux安装Erlang
26 0
|
9天前
|
缓存 NoSQL Java
windows下Springboot部署redis
windows下Springboot部署redis
10 0
|
9天前
|
网络协议 Linux 编译器
【原创】EtherCAT主站IgH解析(二)-- 如何将Igh移植到Linux/Windows/RTOS等多操作系统移植指南
EtherCAT主站方案对比:商业的如Acontis、TwinCAT3和开源的igh、SOEM。SOEM易移植但功能和实时性不足,适合简单应用;igh功能强大,实时性能优秀,基于内核态,适合复杂场景。igh能移植到其他RTOS,但需克服多任务无调度的挑战。依赖操作系统服务如定时器、内存分配,适合Linux内核,但移植到裸机复杂。

热门文章

最新文章