[Redis]Redis指南一 安装与启动

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Tair(兼容Redis),内存型 2GB
简介: 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/SunnyYoona/article/details/72828391 在安装...
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/SunnyYoona/article/details/72828391

在安装Redis前需要了解Redis的版本规则以选择最合适自己的版本,Redis约定次版本(即第一个小数点后的数字)为偶数的版本是稳定版本(如 2.4版本,2.6版本),奇数版本是非稳定版本(如2.5版本,2.7版本),推荐使用稳定版本进行开发和在生产环境中使用.

1. 下载

当前最新版本为3.2.9:

官网下载:https://redis.io/

中文官网下载:http://www.redis.cn/download.html

2. 安装

解压缩文件到指定目录:

tar -zxvf redis-3.2.9.tar.gz -C opt/

进入解压之后的目录,进行编译

cd opt/redis-3.2.9/
make

看到如下信息,表示可以继续下一步:

CC redis-check-rdb.o
    CC geo.o
    LINK redis-server
    INSTALL redis-sentinel
    CC redis-cli.o
    LINK redis-cli
    CC redis-benchmark.o
    LINK redis-benchmark
    INSTALL redis-check-rdb
    CC redis-check-aof.o
    LINK redis-check-aof

Hint: It's a good idea to run 'make test' ;)

make[1]: Leaving directory '/home/xiaosi/opt/redis-3.2.9/src'

二进制文件编译完成后在src目录下,进入src目录之后进行安装操作:

xiaosi@yoona:~/opt/redis-3.2.9/src$ sudo make install

Hint: It's a good idea to run 'make test' ;)

    INSTALL install
    INSTALL install
    INSTALL install
    INSTALL install
    INSTALL install

备注

一般情况下,在Ubuntu系统中,都是需要使用sudo提升权限

在安装成功之后,可以运行测试,确认Redis的功能是否正常:

make test

看到如下信息,表示Redis已经安装成功:

\o/ All tests passed without errors!
Cleanup: may take some time... OK

3. 启动

安装完Redis后的下一步就是启动它,下面将介绍在开发环境和生产环境中运行Redis的方法以及正确停止Redis的步骤.在这之前,我们先了解Redis包含的可执行文件都有哪些,如下表:

文件名你 说明
redis-server Redis服务器
redis-cli Redis命令行客户端
redis-benchmark Redis性能测试工具
redis-check-aof AOF文件修复工具

我们最常使用的两个程序是redis-server 和 redis-cli,其中redis-server 是 Redis的服务器,启动Redis即运行它;而redis-cli是Redis自带的Redis命令行客户端.

3.1 启动Redis

启动Redis有直接启动和通过初始化脚本启动两种方式,分别适用于开发环境和生产环境.

3.1.1 直接启动

直接运行redis-server即可启动Redis:

xiaosi@yoona:~$ redis-server
11657:C 30 May 21:52:39.810 # Warning: no config file specified, using the default config. In order to specify a config file use redis-server /path/to/redis.conf
11657:M 30 May 21:52:39.813 * Increased maximum number of open files to 10032 (it was originally set to 1024).
                _._                                                  
           _.-``__ ''-._                                             
      _.-``    `.  `_.  ''-._           Redis 3.2.9 (00000000/0) 64 bit
  .-`` .-```.  ```\/    _.,_ ''-._                                   
 (    '      ,       .-`  | `,    )     Running in standalone mode
 |`-._`-...-` __...-.``-._|'` _.-'|     Port: 6379
 |    `-._   `._    /     _.-'    |     PID: 11657
  `-._    `-._  `-./  _.-'    _.-'                                   
 |`-._`-._    `-.__.-'    _.-'_.-'|                                  
 |    `-._`-._        _.-'_.-'    |           http://redis.io        
  `-._    `-._`-.__.-'_.-'    _.-'                                   
 |`-._`-._    `-.__.-'    _.-'_.-'|                                  
 |    `-._`-._        _.-'_.-'    |                                  
  `-._    `-._`-.__.-'_.-'    _.-'                                   
      `-._    `-.__.-'    _.-'                                       
          `-._        _.-'                                           
              `-.__.-'                                               

11657:M 30 May 21:52:39.815 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
11657:M 30 May 21:52:39.815 # Server started, Redis version 3.2.9
11657:M 30 May 21:52:39.815 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
11657:M 30 May 21:52:39.815 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled.
11657:M 30 May 21:52:39.815 * The server is now ready to accept connections on port 6379

Redis服务器默认使用6379端口,通过--port参数可以自定义端口号:

redis-server --port 6390
3.1.2 通过初始化脚本启动Redis

在Linux系统中可以通过初始化脚本启动Redis,使得Redis能随系统自动运行,在生产环境中推荐使用此方法运行Redis.在Redis源代码目录的utils文件夹中有一个名为redis-init-script的初始化脚本文件,内容如下:

#!/bin/sh
#
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.

REDISPORT=6379
EXEC=/usr/local/bin/redis-server
CLIEXEC=/usr/local/bin/redis-cli

PIDFILE=/var/run/redis_${REDISPORT}.pid
CONF="/etc/redis/${REDISPORT}.conf"

case "$1" in
    start)
        if [ -f $PIDFILE ]
        then
                echo "$PIDFILE exists, process is already running or crashed"
        else
                echo "Starting Redis server..."
                $EXEC $CONF
        fi
        ;;
    stop)
        if [ ! -f $PIDFILE ]
        then
                echo "$PIDFILE does not exist, process is not running"
        else
                PID=$(cat $PIDFILE)
                echo "Stopping ..."
                $CLIEXEC -p $REDISPORT shutdown
                while [ -x /proc/${PID} ]
                do
                    echo "Waiting for Redis to shutdown ..."
                    sleep 1
                done
                echo "Redis stopped"
        fi
        ;;
    *)
        echo "Please use start or stop as first argument"
        ;;
esac

我们需要配置Redis的运行方式和持久化文件,日志文件的存储位置等,具体步骤如下:

(1) 配置初始化脚本 首先将初始化脚本复制到/etc/init.d目录下,文件名为redis_端口号,其中端口号表示要让Redis监听的端口号,客户端通过该端口连接Redis:

xiaosi@yoona:~/opt/redis-3.2.9/utils$ sudo cp redis_init_script /etc/init.d/
xiaosi@yoona:/etc/init.d$ sudo mv redis_init_script redis_6379

然后修改第六行的REDISPORT变量的值为同样的端口号

REDISPORT=6379

(2) 建立需要的文件夹

建立如下表列出的目录:

目录名 说明
/etc/redis 存放Redis的配置文件
/var/redis/端口号 存放Redis的持久化文件
xiaosi@yoona:~$ sudo mkdir /etc/redis
xiaosi@yoona:~$ sudo mkdir /var/redis
xiaosi@yoona:~$ sudo mkdir /var/redis/6379

(3) 修改配置文件

首先将配置文件模板复制到/etc/redis目录中,以端口号命名(例如,"6379.conf"),然后按照下标对其中的部分参数进行编辑:

xiaosi@yoona:~/opt/redis-3.2.9$ sudo cp redis.conf /etc/redis/
xiaosi@yoona:/etc/redis$ sudo mv redis.conf 6379.conf
参数 说明
daemonize yes 使Redis以守护进程模式运行
pidfile /var/run/redis_端口号.pid 设置Redis的PID文件位置
port 端口号 设置Redis监听的端口号
dir /var/redis/端口号 设置持久化文件存放位置

现在就可以使用/etc/init.d/redis_端口号 start 来启动Redis,而后需要执行下面的命令使Redis随系统自动启动:

sudo update-rc.d redis_端口号 defaults

3.2 客户端

可以使用内置的客户端命令redis-cli进行使用:

xiaosi@yoona:~$ redis-cli
127.0.0.1:6379>

在上面的提示中,127.0.0.1是计算机的IP地址,6379是运行Redis服务器的端口。现在键入以下PING命令:

127.0.0.1:6379> ping
PONG

这表明Redis已成功在您的计算机上安装了。

3.3 停止Redis

考虑到Redis有可能正在将内存中的数据同步到磁盘中,强行终止Redis进程可能会导致数据丢失.正确停止Redis的方式应该是向Redis发送SHUTDOWN命令,方法为:

redis-cli SHUTDOWN

当redis收到SHUTDOWN命令后,会先断开所有客户端连接,然后根据配置执行持久化,最后完成退出.

来自于<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
目录
相关文章
|
3月前
|
NoSQL 数据可视化 Redis
Mac安装Redis
Mac安装Redis
73 3
|
3月前
|
NoSQL Ubuntu 安全
在Ubuntu 18.04上安装和保护Redis的方法
在Ubuntu 18.04上安装和保护Redis的方法
89 0
|
27天前
|
NoSQL 数据可视化 Linux
redis学习四、可视化操作工具链接 centos redis,付费Redis Desktop Manager和免费Another Redis DeskTop Manager下载、安装
本文介绍了Redis的两个可视化管理工具:付费的Redis Desktop Manager和免费的Another Redis DeskTop Manager,包括它们的下载、安装和使用方法,以及在使用Another Redis DeskTop Manager连接Redis时可能遇到的问题和解决方案。
86 1
redis学习四、可视化操作工具链接 centos redis,付费Redis Desktop Manager和免费Another Redis DeskTop Manager下载、安装
|
8天前
|
存储 SQL 关系型数据库
2024Mysql And Redis基础与进阶操作系列(1)作者——LJS[含MySQL的下载、安装、配置详解步骤及报错对应解决方法]
Mysql And Redis基础与进阶操作系列(1)之[MySQL的下载、安装、配置详解步骤及报错对应解决方法]
|
20天前
|
NoSQL Ubuntu Linux
Redis 安装
10月更文挑战第14天
47 1
|
24天前
|
NoSQL Linux Redis
Docker学习二(Centos):Docker安装并运行redis(成功运行)
这篇文章介绍了在CentOS系统上使用Docker安装并运行Redis数据库的详细步骤,包括拉取Redis镜像、创建挂载目录、下载配置文件、修改配置以及使用Docker命令运行Redis容器,并检查运行状态和使用Navicat连接Redis。
172 3
|
1月前
|
NoSQL Linux Shell
Redis 的安装与部署(图文)
Redis 的安装与部署(图文)
|
1月前
|
NoSQL Ubuntu Redis
Ubuntu安装redis
本文介绍了在Ubuntu系统上安装Redis的两种方法:一种是通过编译安装本地Redis包,包括下载、解压、编译安装、配置启动和测试连接的步骤;另一种是通过apt安装在线的Redis包,并提供了更新系统软件包列表、安装Redis服务器、检查Redis服务器状态和测试连接的命令。
54 0
Ubuntu安装redis
|
2月前
|
NoSQL 关系型数据库 Redis
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
mall在linux环境下的部署(基于Docker容器),docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongodb、minio详细教程,拉取镜像、运行容器
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
|
2月前
|
NoSQL Linux Redis
linux安装单机版redis详细步骤,及python连接redis案例
这篇文章提供了在Linux系统中安装单机版Redis的详细步骤,并展示了如何配置Redis为systemctl启动,以及使用Python连接Redis进行数据操作的案例。
62 2