更新时间:2025-07-24 GMT+08:00

Ioredis客户端连接Redis(Node.js)

本章节介绍使用ioredis客户端连接Redis实例的方法。更多的客户端的使用方法请参考Redis客户端

以下操作以通过弹性云服务器上的客户端连接Redis实例为例进行说明。

约束与限制

本章节操作,仅适用于连接单机、主备、Proxy集群实例,如果是使用ioredis客户端连接Cluster集群,请参考NodeJs Redis客户端使用

前提条件

  • 已成功创建Redis实例,且状态为“运行中”。创建Redis实例的操作请参考购买Redis实例
  • 已创建弹性云服务器,创建弹性云服务器的方法,请参见购买弹性云服务器
  • 如果弹性云服务器为Linux系统,该弹性云服务器必须已经安装gcc编译环境(可通过gcc --version命令查询gcc版本,如果已安装gcc编译环境,会返回gcc版本)。

    如果ECS未安装gcc编译环境,请执行以下命令进行安装:

    yum install -y make
    yum install -y pcre-devel
    yum install -y zlib-devel
    yum install -y libevent-devel
    yum install -y openssl-devel
    yum install -y gcc-c++
  • 连接实例前确保客户端与Redis实例之间网络互通,具体请参考连接Redis网络要求

Ioredis客户端连接Redis

  • Ioredis客户端连接Redis,如果客户端服务器为Ubuntu(debian系列),请参见客户端服务器为Ubuntu(debian系列)。
  • Ioredis客户端连接Redis,如果客户端服务器为centos(redhat系列),请参见客户端服务器为centos(redhat系列)。
  1. 查看并获取待连接Redis实例的IP地址/域名和端口。

    具体步骤请参见查看和修改DCS实例基本信息

  2. 登录弹性云服务器。
  3. 安装Node.js。

    apt install nodejs-legacy

    如果以上命令安装不了,备选方式如下:

    wget https://nodejs.org/dist/v0.12.4/node-v0.12.4.tar.gz --no-check-certificate
    tar -xvf node-v4.28.5.tar.gz
    cd node-v4.28.5
    ./configure
    make
    make install

    安装完成后,可执行node --version查看Node.js的版本号,确认Node.js已安装成功。

  4. 安装js包管理工具npm。

    apt install npm

  5. 安装NodeJs redis客户端ioredis。

    npm install ioredis

  6. 编辑连接Redis实例的示例脚本。

    编辑连接示例脚本ioredisdemo.js。示例脚本中增加以下内容,包括连接以及数据读取。

    var Redis = require('ioredis');
    var redis = new Redis({
      port: 6379,          // Redis port
      host: '192.168.0.196',   // Redis host
      family: 4,           // 4 (IPv4) or 6 (IPv6)
      password: '******',
      db: 0
    }); 
    redis.set('foo', 'bar');
    redis.get('foo', function (err, result) {
      console.log(result);
    }); 
    // Or using a promise if the last argument isn't a function
    redis.get('foo').then(function (result) {
      console.log(result);
    });
    // Arguments to commands are flattened, so the following are the same:
    redis.sadd('set', 1, 3, 5, 7);
    redis.sadd('set', [1, 3, 5, 7]);
    // All arguments are passed directly to the redis server:
    redis.set('key', 100, 'EX', 10);

    其中,host为Redis实例的IP地址/域名,port为Redis实例的端口。IP地址/域名和端口获取见1,请按实际情况修改后执行。******为创建Redis实例时自定义的密码,请按实际情况修改后执行。如果使用实例创建的ACL账号连接,实例密码需要配置为“账号名称:账号密码”。创建或查看ACL账号,请参见配置Redis ACL访问账号。如果实例为免密访问,则省略命令中的密码配置。

  7. 运行示例脚本,连接Redis实例。

    node ioredisdemo.js

  1. 查看并获取待连接Redis实例的IP地址/域名和端口。

    具体步骤请参见查看和修改DCS实例基本信息

  2. 登录弹性云服务器。
  3. 安装Node.js。

    yum install nodejs

    如果以上命令安装不了,备选方式如下:

    wget https://nodejs.org/dist/v0.12.4/node-v0.12.4.tar.gz --no-check-certificate
    tar -xvf node-v0.12.4.tar.gz
    cd node-v0.12.4
    ./configure
    make
    make install

    安装完成后,可执行node -v查看Node.js的版本号,确认Node.js已安装成功。

  4. 安装js包管理工具npm。

    yum install npm

  5. 安装Node.js redis客户端ioredis。

    npm install ioredis

  6. 编辑连接Redis实例的示例脚本。

    编辑连接示例脚本ioredisdemo.js。示例脚本中增加以下内容,包括连接以及数据读取。

    var Redis = require('ioredis');
    var redis = new Redis({
      port: 6379,          // Redis port
      host: '192.168.0.196',   // Redis host
      family: 4,           // 4 (IPv4) or 6 (IPv6)
      password: '******',
      db: 0
    });
    redis.set('foo', 'bar');
    redis.get('foo', function (err, result) {
      console.log(result);
    });
    // Or using a promise if the last argument isn't a function
    redis.get('foo').then(function (result) {
      console.log(result);
    }); 
    // Arguments to commands are flattened, so the following are the same:
    redis.sadd('set', 1, 3, 5, 7);
    redis.sadd('set', [1, 3, 5, 7]); 
    // All arguments are passed directly to the redis server:
    redis.set('key', 100, 'EX', 10);

    其中,host为Redis实例的IP地址/域名,port为Redis实例的端口。IP地址/域名和端口获取见1,请按实际情况修改后执行。******为创建Redis实例时自定义的密码,请按实际情况修改后执行。如果使用实例创建的ACL账号连接,实例密码需要配置为“账号名称:账号密码”。创建或查看ACL账号,请参见配置Redis ACL访问账号。如果实例为免密访问,则省略命令中的密码配置。

  7. 运行示例脚本,连接Redis实例。

    node ioredisdemo.js

相关文档

如果Redis连接过程出现问题,请参见Redis连接失败问题排查和解决