将数据导入数据库

您可以导入、导出或备份特定Redis Enterprise Software数据库的文件以恢复数据。您可以从单个文件导入,也可以从多个文件导入,例如当您想要从集群数据库的备份中导入时。

您可以导入、导出备份特定Redis企业版软件数据库的文件以恢复数据。您可以从单个文件导入,也可以从多个文件导入,例如当您想要从集群数据库的备份中导入时。

警告:
导入数据将删除数据库中所有现有内容。

将数据导入数据库

使用集群管理器用户界面将数据导入数据库:

  1. 数据库屏幕上,从列表中选择数据库,然后选择配置

  2. 点击

  3. 选择导入

  4. 选择与您的存储位置类型对应的选项卡并输入位置详细信息。

    请参阅支持的存储位置以获取有关每种存储位置类型的更多信息。

  5. 选择导入

支持的存储位置

数据可以从本地挂载点导入,使用FTP/SFTP传输到一个URI,或存储在云提供商存储上。

当从本地挂载点或云提供商导入时,导入位置需要对运行Redis Enterprise Software的组和用户可用,默认情况下为redislabs:redislabs

Redis企业版软件需要能够查看存储位置中的对象。实现细节根据提供商和您的配置而有所不同。要了解更多信息,请查阅提供商的文档。

以下部分提供了一般指南。由于提供者的功能经常变化,请使用您的提供者的文档以获取最新信息。

FTP 服务器

在从FTP服务器导入数据之前,请确保:

  • 您的 Redis Enterprise 集群可以连接并验证到 FTP 服务器。
  • 您在FTP服务器位置指定的用户具有从服务器读取文件的权限。

要从FTP服务器导入数据,请使用以下语法设置RDB文件路径

[protocol]://[username]:[password]@[host]:[port]/[path]/[filename].rdb

其中:

  • protocol: 服务器的协议,可以是 ftpftps
  • username: 如果需要,请输入您的用户名。
  • password: 如果需要,请输入您的密码。
  • hostname: 服务器的主机名或IP地址。
  • port: 服务器的端口号,如果需要的话。
  • path: 文件的位置路径。
  • filename: 文件的名称。

示例:ftp://username:password@10.1.1.1/home/backups/.rdb

选择添加路径以添加另一个导入文件路径。

本地挂载点

在从本地挂载点导入数据之前,请确保:

  • 节点可以连接到托管挂载点的服务器。

  • redislabs:redislabs 用户有权读取本地挂载点和目标服务器上的文件。

  • 您必须在所有集群节点上挂载相同路径的存储。您也可以使用本地存储,但必须手动将导入的文件复制到所有节点,因为节点上的导入源文件夹不同步。

从本地挂载点导入:

  1. 在集群中的每个节点上,创建挂载点:

    1. 连接到节点的终端。

    2. 将远程存储挂载到本地挂载点。

      例如:

      sudo mount -t nfs 192.168.10.204:/DataVolume/Public /mnt/Public
      
  2. 在导入位置的路径中,输入挂载点。

    例如:/mnt/Public/.rdb

从版本6.2.12开始,Redis Enterprise直接从挂载点读取文件,使用符号链接(symlink),而不是将它们复制到节点上的临时目录。

选择添加路径以添加另一个导入文件路径。

SFTP 服务器

在从SFTP服务器导入数据之前,请确保:

  • 您的 Redis Enterprise 集群可以连接并验证到 SFTP 服务器。

  • 您在SFTP服务器位置指定的用户具有从服务器读取文件的权限。

  • SSH私钥已正确指定。您可以使用集群生成的密钥或指定自定义密钥。

    要使用集群自动生成的密钥:

    1. 转到集群 > 安全 > 证书

    2. 展开集群SSH公钥

    3. 将集群SSH公钥下载或复制到SFTP服务器上的适当位置。

      使用服务器文档确定SSH公钥的适当位置。

要从SFTP服务器导入数据,请以以下格式输入SFTP服务器位置:

[protocol]://[username]:[password]@[host]:[port]/[path]/[filename].rdb

其中:

  • protocol: 服务器的协议,可以是 ftpftps
  • username: 如果需要,请输入您的用户名。
  • password: 如果需要,请输入您的密码。
  • hostname: 服务器的主机名或IP地址。
  • port: 服务器的端口号,如果需要的话。
  • path: 文件的位置路径。
  • filename: 文件的名称。

示例:sftp://username:password@10.1.1.1/home/backups/[filename].rdb

选择添加路径以添加另一个导入文件路径。

AWS 简单存储服务

在您选择从Amazon Web Services (AWS) 简单存储服务 (S3) 存储桶导入数据之前,请确保您具备以下条件:

在Redis企业软件集群管理器UI中,当您输入导出位置详细信息时:

  • 选择 AWS S3

  • RDB文件路径字段中,输入您的存储桶路径。选择添加路径以添加另一个导入文件路径。

  • Access key ID字段中,输入访问密钥ID。

  • Secret access key字段中,输入秘密访问密钥。

您还可以连接到使用S3协议但不由Amazon AWS托管的存储服务。存储服务必须具有有效的SSL证书。要连接到兼容S3的存储位置,请运行rladmin cluster config

rladmin cluster config s3_url <URL>

替换为S3兼容存储位置的主机名或IP地址。

谷歌云存储

在从Google Cloud存储桶导入数据之前,请确保您已具备以下条件:

  • 存储位置路径格式为:/bucket_name/[path]/[filename].rdb
  • 您账户的JSON服务账户密钥
  • 一个principal用于您的存储桶,使用服务账户密钥中的client_email,以及一个role,该角色具有从存储桶获取文件的权限(例如Storage Legacy Object Reader角色,该角色授予storage.objects.get权限)

在Redis企业软件集群管理器UI中,当您输入导入位置详细信息时:

  • 选择 Google Cloud Storage

  • RDB文件路径字段中,输入您的文件路径。选择添加路径以添加另一个导入文件路径。

  • 客户端ID字段中,输入服务账户密钥中的client_id

  • 客户邮箱字段中,输入服务账户密钥中的client_email

  • 私钥ID字段中,输入服务账户密钥中的private_key_id

  • 私钥字段中,输入服务账户密钥中的private_key。 将\n替换为换行符。

Azure Blob 存储

在您选择从Azure Blob Storage导入之前,请确保您已经:

在Redis企业软件集群管理器UI中,当您输入导入位置详细信息时:

  • 选择 Azure Blob Storage

  • RDB文件路径字段中,输入您的文件路径。选择添加路径以添加另一个导入文件路径。

  • Azure 账户名称字段中,输入您的存储账户名称。

  • Azure 账户密钥字段中,输入存储账户密钥。

导入到Active-Active数据库中

将数据导入Active-Active数据库时,有两种选择:

  • Flush all data 从 Active-Active 数据库中清除所有数据,然后将数据导入数据库。
  • 导入数据但将其合并到现有数据库中。

因为Active-Active数据库具有数字计数器数据类型,当您将导入的数据合并到现有数据中时,RS会根据导入数据中的值增加计数器。通过Redis Enterprise Cluster Manager UI进行的导入会为您处理这些数据类型。

您可以从集群管理器用户界面将数据导入到Active-Active数据库中。 当您将数据导入到Active-Active数据库时,会有一个特殊的提示警告,提示导入的数据将被合并到现有数据库中。

RATE THIS PAGE
Back to top ↑