redis入门指南-准备

前言

接下来我们要开始安装并初步使用redis

安装redis

这里我还是建议不要在windows上尝试安装redis, 自己使用虚拟机安装一个linux系统(centos或者Ubuntu都是不错的选择), 我这里使用的是VM安装的centos系统, centos的版本是

版本说明

redis的版本规则是: 次版本(小数点后的一位)为偶数的版本是稳定版(如:2.4, 2.6), 奇数的这是非稳定的版本(如:2.5, 2.7)

在linux上安装

推荐下载稳定的版本, 建议自己去官网下载安装包, 自行选择稳定的版本, 不建议使用apt或者yum这种形式安装redis, 我这里安装最新的稳定版本3.0.7, 这个版本支持集群, 也就是分布式特性的redis

1
2
3
4
5
wget http://download.redis.io/releases/redis-3.0.7.tar.gz
cd redis-3.0.7
make
make install
make test

启动和停止redis

redis有一些可执行文件, 如下表:

但是最常用的就是redis-serverredis-cli
redis-server: 管理redis服务(启停redis服务)
redis-cli: redis的命令行客户端
在我们使用make install命令之后, redis中的这些程序会自动复制到/usr/local/bin/目录下面, 所以直接在命令行中可以直接使用这些程序, 不需要额外的配置

启动redis

直接启动

这种情况适用于开发环境中, 使用redis-server
redis-server --port 6379
这里指定了端口号, 6379就是redis默认的端口号

使用初始化脚本启动

在redis源代码中已经给我们提供了一个初始化脚本模版: /redis-3.0.7/utils/redis_init_script, 内容其实很简单

  1. 复制初始化脚本模版到/etc/init.d/

    1
    cp redis_init_script /etc/init.d/redis_6379
  2. 复制配置文件到/etc/redis/
    redis源代码中有redis的配置文件/redis-3.0.7/redis.conf

    1
    2
    mkdir /etc/redis
    cp /redis-3.0.7/redis.conf /etc/redis/6379.conf
  3. 修改redis配置文件

    可以根据自己的需求进行更改相关配置
    我们为了让redis在后台运行, 需要修改daemonize=yes默认是no的

  4. 启动

    1
    /etc/init.d/redis_6379 start
  5. 随系统自动启动

    1
    chkconfig redis_6379 on

执行之后会出现service redis_6379 does not support chkconfig
redis_6379的最前面加入下面两行, 再执行一遍就ok了

1
2
# chkconfig:   2345 90 10
# description: Redis is a persistent key-value database

停止

由于强行停止redis会导致内存中的数据不能同步到硬盘, 所以应该使用正确的方式停止redis:

1
redis-cli SHUTDOWN

redis命令行客户端

我们开始使用redis-cli来学习使用redis

发送命令

现在有两种模式, 一种是将命令作为redis-cli的参数执行, 一种是交互模式

  1. 命令参数模式

    1
    2
    3
    4
    # 连接redis, 是不是和mysql很像
    redis-cli -h 127.0.0.1 -p 6379
    # 测试客户端和redis服务的连接, 如果返回PONG, 则表示正常
    redis-cli ping
  2. 交互模式

命令返回值

执行一条命令, 返回值我们很关系, 命令的返回值有5种类型

  1. 状态回复
    最简单, 如上面的ping执行返回PONG
  2. 错误回复
  3. 整数回复
  4. 字符串回复
    最常见类型, 如果结果是空,则返回(nil)
  5. 多行字符串回复

配置

redis启动服务的时候就可以自定额外的配置文件, 会覆盖原来的配置文件, 另外还可以使用命令行方式修改配置文件(部分)

多数据库

我们试着用图形化客户端连接虚拟机中的redis

开启远程访问

要远程连接redis, 需要配置两个地方

  1. 修改config
    修改bind 0.0.0.0
  2. 添加6379端口到防火墙
    1
    2
    3
    4
    5
    vi /etc/sysconfig/iptables
    # 添加
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 6379 -j ACCEPT
    # 重启防火墙
    service iptables restart

redis desktop manager

多数据库


我们很直观的看到, redis中有16个数据库, 名字从0到15, 客户端与redis建立连接后会自动选择0号数据库

参考

redis入门指南