Redis 的安装及远程访问配置

Redis 的安装及远程访问配置

对下载、安装与配置单机版 Redis 进行说明,同时开放远程访问,构建独立的 Redis 服务器

下载

Redis 4.0.8 is the latest stable version.

安装

  1. 解压缩,tar -xvf redis-4.0.8.tar.gz
  2. 进入目录,cd redis-4.0.8
  3. 执行,make && make install
  4. 首先会编辑 Redis,并将 Redis bin 服务,复制到 /usr/local/bin 目录下,具体如下:
    -rwxr-xr-x. 1 root root 2451440 2月  12 20:30 redis-benchmark    // 性能测试工具
    -rwxr-xr-x. 1 root root 5763360 2月  12 20:30 redis-check-aof    // AOF文件修复工具
    -rwxr-xr-x. 1 root root 5763360 2月  12 20:30 redis-check-rdb    // RDB文件检查工具
    -rwxr-xr-x. 1 root root 2616600 2月  12 20:30 redis-cli  // 命令行客户端
    lrwxrwxrwx. 1 root root      12 2月  12 20:30 redis-sentinel -> redis-server     // Sentinel 服务
    -rwxr-xr-x. 1 root root 5763360 2月  12 20:30 redis-server   // 服务

常见错误

  1. 执行make test时,报You need tcl 8.5 or newer in order to run the Redis test错误
    安装并升级yum -y install tcl即可解决
  2. jemalloc/jemalloc.h: No such file or directory
    make MALLOC=libc即可解决

配置

服务控制配置

  1. 复制,cp -p ./redis-4.0.8/utils/redis_init_script /etc/init.d/redisd
  2. 编辑redisd,注意:REDISPORT、EXEC、CLIEXEC、PIDFILE、CONF,这几个变量的设定
REDISPORT=6379
EXEC=/usr/local/bin/redis-server
CLIEXEC=/usr/local/bin/redis-cli

PIDFILE=/var/run/redis_${REDISPORT}.pid
CONF="/etc/redis/redis_${REDISPORT}.conf"
// 偏好将 Reids config 文件命名为 redis_6379.conf
  1. 至此,后续可以使用service start/stop redisd等命令来控制 Redis

服务配置

  1. 复制,cp -p redis.conf /etc/redis/redis_6379.conf下(无此目录时,可创建)
  2. 编辑,redis_6379.conf
// 为了能够远程访问,让此服务器作为 Redis 专用服务器来使用,注释掉
#bind 127.0.0.1
// 同样,为了能够远程访问,由 yes 更改为 no
protected-mode no
// 设定的值参考 /proc/sys/net/core/somaxconn 下的数值,否则会报警
tcp-backlog 128
// 启用后台模式,由 no 改为 yes
daemonize yes
// 最好验证下,是否和 redisd 中的配置一致
pidfile /var/run/redis_6379.pid
// 修改日志等级,设定日志路径
loglevel warning
logfile "/data/redis/log/redis.log"
// 设定访问密码为 redis
requirepass redis
// 配置持久化文件存放位置
dir /data/redis
  1. 保存退出

启动、停止

  1. 启动service redisd start
  2. 验证,注意:因为设定了密码,所以需要执行auth redis进行验证
    [root@centos-linux bin]# ./redis-cli
    127.0.0.1:6379> ping
    (error) NOAUTH Authentication required.
    127.0.0.1:6379> auth redis
    OK
    127.0.0.1:6379> ping
    PONG
    127.0.0.1:6379>
  3. 停止
    [root@centos-linux ~]# cd /usr/local/bin/
    [root@centos-linux bin]# ./redis-cli
    127.0.0.1:6379> auth redis
    OK
    127.0.0.1:6379> shutdown
    not connected>
    not connected> exit

开始防火墙端口访问

Redis 端口为 6379,如果需要从外部进行访问,则需要开始防火墙允许外部访问 6379 端口。

编辑 vim /etc/sysconfig/iptables 文件,添加如下命令:

-A INPUT -p tcp -m state --state NEW -m tcp --dport 6379 -j ACCEPT

如果发现打开的文件 /etc/sysconfig/iptables 为空时,请执行:

yum -y install iptables*    // 安装 iptables

重启防火墙

service iptables restart

Mac 下访问 Redis 服务

安装 Redis

  1. 使用 brew 安装 Redis,brew install redis
  2. 启动 Redis,brew services start redis
  3. 配置 Redis,redis-server /usr/local/etc/redis.conf(无必要,因为我们仅需要 redis-cli)
  4. 远程访问之前配置的 Reids 服务器,redis-cli -h 10.211.55.3 -p 6379
  5. 验证
    ➜  ~ redis-cli -h 10.211.55.3 -p 6379
    10.211.55.3:6379> auth redis
    OK
    10.211.55.3:6379> ping
    PONG
    10.211.55.3:6379>