美文网首页
CentOS 7 安装 Redis

CentOS 7 安装 Redis

作者: BiaoWong | 来源:发表于2018-12-20 09:09 被阅读4次

Redis介绍

Redis https://redis.io 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。 它支持多种类型的数据结构,如 字符串(strings), 散列(hashes), 列表(lists), 集合(sets), 有序集合(sorted sets) 与范围查询, bitmaps, hyperloglogs 和 地理空间(geospatial) 索引半径查询。 Redis 内置了 复制(replication),LUA脚本(Lua scripting), LRU驱动事件(LRU eviction),事务(transactions) 和不同级别的 磁盘持久化(persistence), 并通过 Redis哨兵(Sentinel)和自动 分区(Cluster)提供高可用性(high availability)。

Redis使用

  • Redis命令 redis完整的命令列表,以及他们的说明文档。
  • 管道(Pipelining):学习如何一次发送多个命令,节省往返时间。
  • Redis 发布/订阅(Pub/Sub):redis是一个快速、稳定的发布/订阅的信息系统。
  • Redis Lua 脚本:Redis 2.6 Lua 脚本相关文档。
  • Lua 脚本调试:Redis 3.2 Lua 脚本调试相关文档。
  • 内存优化:了解如何使用内存和学习一些使用技巧。
  • 过期(Expires):Redis允许为每一个key设置不同的过期时间,当它们到期时将自动从服务器上删- 除。
  • 将Redis当做使用LRU算法的缓存来使用:如何配置并且将Redis当做缓存来使用,通过限制内存及自动回收键。
  • Redis 事务:将一组命令放在同一个事务中进行处理。
  • 大量插入数据:如何在短时间里向Redis写入大量数据。
  • 从文件中批量插入数据:将文件中的指令批量执行。
  • 分区(Partitioning):如何将你的数据分布在多个Redis里面。
  • 分布式锁(Distributed locks):用Redis实现分布式锁管理器。
  • key事件通知(Redis keyspace notifications):通过发布/订阅获得key事件的通知(版本2.8或更高)。
  • 创建二级索引(Creating secondary indexes with Redis):使用redis的数据结构创建二级索引。

Redis管理

  • Redis-Cli:学习怎么通过命令行使用redis。
  • 配置(Configuration):怎么配置 redis。
  • 复制(Replication):你需要知道怎么设置主从复制。
  • 持久化(Persistence):了解如何配置redis的持久化。
  • Redis 管理(Redis Administration):学习redis管理方面的知识。
  • 安全性(Security):概述Redis的安全。
  • 加密(encryption):如何加密redis的客户端与服务端通信。。
  • 信号处理(Signals Handling):如何处理Redis信号。
  • 连接处理(Connections Handling):如何处理Redis客户端连接。
  • 高可用性(High Availability):Redis Sentinel是Redis官方的高可用性解决方案。目前工作进展情况(beta阶段,积极发展),已经可用。
  • 延迟监控(Latency monitoring):redis集成的延迟监控和报告功能对于为低延迟应用场景优化redis很有帮助。
  • 基准(Benchmarks):看看Redis在不同平台上跑得有多快。
  • Redis Releases:Redis的开发周期和版本编号。

Redis安装

1. 配置编译环境

sudo yum install gcc-c++

2. 安装Redis

编译安装Redis

cd /usr/local/src
wget http://download.redis.io/releases/redis-4.0.2.tar.gz
tar zxvf redis-4.0.2.tar.gz
cd redis-4.0.2
make

配置Redis

# 创建存储redis文件目录
mkdir /usr/local/redis

# 复制redis-server redis-cli到新建立的文件夹
cp /usr/local/src/redis-4.0.2/src/redis-server /usr/local/redis/
cp /usr/local/src/redis-4.0.2/src/redis-cli /usr/local/redis/

# 复制redis的配置文件
cp /usr/local/src/redis-4.0.2/redis.conf /usr/local/redis/

编辑配置文件

vim /usr/local/redis/redis.conf

# 将bind 127.0.0.1前的“#”注释去掉
bind 127.0.0.1
# 默认为保护模式,把 protected-mode yes 改为 no
protected-mode no
# 默认为不守护进程模式,把daemonize no 改为 yes
daemonize yes
# 将 requirepass foobared 前的“#”去掉,密码(foobared)改为你想要设置的密码
requirepass 123456 # 密码 123456

编辑Redis操作脚本

vim /etc/init.d/redis

#!/bin/sh
# chkconfig: 2345 80 90
# description: Start and Stop redis
#PATH=/usr/local/bin:/sbin:/usr/bin:/bin
REDISPORT=6379 # 端口
EXEC=/usr/local/redis/redis-server      # redis-server所在路径
REDIS_CLI=/usr/local/redis/redis-cli    # redis-cli所在路径
PIDFILE=/var/run/redis_6379.pid
CONF="/usr/local/redis/redis.conf"      # redis配置文件所在路径
AUTH="123456"   # 密码 123456

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
        if [ "$?"="0" ]
        then
            echo "Redis is running..."
        fi
        ;;
    stop)
        if [ ! -f $PIDFILE ]
        then
            echo "$PIDFILE does not exist, process is not running"
        else
            PID=$(cat $PIDFILE)
            echo "Stopping ..."
            $REDIS_CLI -p $REDISPORT SHUTDOWN
            while [ -x ${PIDFILE} ]
            do
                echo "Waiting for Redis to shutdown ..."
                sleep 1
            done
            echo "Redis stopped"
        fi
        ;;
    restart|force-reload)
        ${0} stop
        ${0} start
        ;;
    *)
    echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&2
        exit 1
esac

设置权限及开机启动

chmod 755 /etc/rc.d/init.d/redis
chkconfig redis on

Redis操作指令

# 打开服务
service redis start
# 重启服务
service redis restart
# 关闭服务
service redis stop

CentOS 7 Redis 操作脚本

vim /etc/systemd/system/redis-server.service # 编辑脚本

[Unit]
Description=The redis-server Process Manager
After=syslog.target network.target

[Service]
Type=simple
PIDFile=/var/run/redis_6379.pid
ExecStart=/usr/local/redis/redis-server /usr/local/redis/redis.conf         
ExecReload=/bin/kill -USR2 $MAINPID
ExecStop=/bin/kill -SIGINT $MAINPID

[Install]
WantedBy=multi-user.target

:wq! #保存退出

# 开机自启动
systemctl enable redis-server.service
# 开启服务
systemctl start redis-server.service
# 重启服务
systemctl restart redis-server.service
# 停止服务
systemctl stop redis-server.service
# 查看服务状态
systemctl start redis-server.service 

相关文章

网友评论

      本文标题:CentOS 7 安装 Redis

      本文链接:https://www.haomeiwen.com/subject/qfpekqtx.html