学习

Redis 提供了多种将数据导入数据库的方式;可以从文件、脚本或现有的 Redis 数据库导入。

使用 reds-cli 脚本导入#

1. 创建一个简单的文件 users.redis ,包含所有你想运行的命令

HSET 'user:001' first_name 'John' last_name 'doe' dob '12-JUN-1970'
HSET 'user:002' first_name 'David' last_name 'Bloom' dob '03-MAR-1981'

2. 使用 redis-cli 工具执行脚本

redis-cli -h localhost -p 6379 < users.redis

这种方法只会运行命令,不会影响现有数据,除非你在脚本中修改了现有键。

信息

示例数据集:你可以在 https://github.com/redis-developer/redis-datasets 仓库中找到可以使用此方法导入的示例数据集。

恢复 RDB 文件#

如果你有一个包含所需数据的 RDB 文件 dump.rdb,你可以使用此文件创建一个新数据库

  1. 1.

    dump.rdb 文件复制到 Redis 工作目录中

    如果你不知道该目录是哪个文件夹,可以在 Redis 实例正在运行的地方运行命令 CONFIG get dir

  2. 2.

    使用 redis-server 启动 Redis 服务

  3. 3.

    文件 dump.rdb 会自动导入。

  4. 4.

    使用 redis-cli 或任何其他客户端连接到数据库,检查数据是否已导入。(例如 SCAN

使用 RIOT 导入和同步#

Redis Input/Output Tools (RIOT) 是一组用于 Redis 的导入/导出命令行工具

  • RIOT DB:从 RDBMS 迁移到 Redis、Search、JSON 等...
  • RIOT File:从文件批量导入/导出数据。
  • RIOT Gen:生成 Redis 示例数据集,用于新功能开发和概念验证。
  • RIOT Redis:从任何 Redis 数据库(包括 AWS Elasticache)到另一个 Redis 数据库的实时复制。
  • RIOT Stream:从/向 Kafka 主题导入/导出消息。

将数据导入 Redis Cloud#

你可以轻松地将数据导入 Redis Enterprise 和 Redis Cloud,请查看以下文档