溫馨提示×

redis數(shù)據(jù)庫存儲(chǔ)怎樣備份恢復(fù)

小樊
81
2024-11-14 08:24:48
欄目: 云計(jì)算

Redis 提供了兩種主要的持久化方式:RDB(快照)和 AOF(追加文件)。你可以使用這些方法來備份和恢復(fù) Redis 數(shù)據(jù)庫。

  1. RDB(快照)持久化:

RDB 是 Redis 默認(rèn)的持久化方式。它會(huì)在指定的時(shí)間間隔內(nèi)生成數(shù)據(jù)集的時(shí)間點(diǎn)快照(Snapshot)。這些快照文件可以用于備份、災(zāi)難恢復(fù)等場景。

備份(創(chuàng)建 RDB 文件):

  • 使用 SAVEBGSAVE 命令手動(dòng)創(chuàng)建 RDB 文件。例如:SAVEBGSAVE。
  • 配置 Redis 在啟動(dòng)時(shí)自動(dòng)創(chuàng)建 RDB 文件。這可以在 redis.conf 配置文件中設(shè)置:
    save 900 1
    save 300 10
    save 60 10000
    
    這些配置表示在 900 秒內(nèi)有 1 個(gè)鍵值變更、300 秒內(nèi)有 10 個(gè)鍵值變更或 60 秒內(nèi)有 10000 個(gè)鍵值變更時(shí),Redis 會(huì)自動(dòng)創(chuàng)建 RDB 文件。

恢復(fù)(使用 RDB 文件):

  • 將生成的 RDB 文件復(fù)制到 Redis 服務(wù)器的數(shù)據(jù)目錄中。
  • 啟動(dòng) Redis 服務(wù)器,它會(huì)自動(dòng)加載 RDB 文件并恢復(fù)數(shù)據(jù)。
  1. AOF(追加文件)持久化:

AOF 持久化記錄了 Redis 服務(wù)器接收到的所有寫操作命令。在 Redis 服務(wù)器重啟時(shí),可以通過重新執(zhí)行這些命令來恢復(fù)數(shù)據(jù)。

備份(創(chuàng)建 AOF 文件):

  • 使用 BGREWRITEAOF 命令手動(dòng)創(chuàng)建 AOF 文件。例如:BGREWRITEAOF。
  • 配置 Redis 在啟動(dòng)時(shí)自動(dòng)創(chuàng)建 AOF 文件。這可以在 redis.conf 配置文件中設(shè)置:
    appendonly yes
    appendfilename "appendonly.aof"
    
    這表示 Redis 會(huì)將寫操作命令追加到 appendonly.aof 文件中。

恢復(fù)(使用 AOF 文件):

  • 將生成的 AOF 文件復(fù)制到 Redis 服務(wù)器的數(shù)據(jù)目錄中。
  • 啟動(dòng) Redis 服務(wù)器,它會(huì)自動(dòng)加載 AOF 文件并恢復(fù)數(shù)據(jù)。如果需要,還可以通過 redis-cli 命令行工具手動(dòng)執(zhí)行 AOF 文件中的命令來恢復(fù)數(shù)據(jù):
    redis-cli bgrewriteaof
    

注意:在恢復(fù)數(shù)據(jù)之前,請確保已停止 Redis 服務(wù)器。

0