I transferred my redis snapshot (dump.rdb
file) using scp
to a remote server. I need to run a redis server on this remote and recover the data from the dump.rdb
file. How can I do that?
To restore redis data just move redis backup file (dump. rdb) into your redis directory and start the server. To get your redis directory use CONFIG command can be used. The CONFIG GET command is used to read the configuration parameters of a running Redis server.
Snapshotting. By default Redis saves snapshots of the dataset on disk, in a binary file called dump. rdb . You can configure Redis to have it save the dataset every N seconds if there are at least M changes in the dataset, or you can manually call the SAVE or BGSAVE commands.
In Redis, a snapshot refers to the process and method of ensuring the persistence of data from the system memory to a permanent location such as the system's disk. Although Redis is an in-memory data store, it does provide various methods to store and recover data to and from the system's disk.
There is nothing specific to do. Just install the redis server on the new machine, and edit the configuration file. You just need to change the following parameters to point to the location of the dump file you have just copied.
# The filename where to dump the DB dbfilename mydump.rdb # The working directory. # # The DB will be written inside this directory, with the filename specified # above using the 'dbfilename' configuration directive. # # Also the Append Only File will be created inside this directory. # # Note that you must specify a directory here, not a file name. dir /data/mydirectory/
Finally, the redis server can be started in the normal way.
For databases where the appendonly
flag is set to no
, you can do the following:
dir
option in your redis config). Also make sure your backup filename matches the dbfilename
config option.If, on the other hand, you need to restore a rdb file to an append only database, you should do something along the lines of:
dir
option in your redis config). Also make sure your backup filename matches the dbfilename
config option.appendonly
flag to no
(otherwise redis will ignore your rdb file when it starts).redis-cli BGREWRITEAOF
to create a new appendonly file.appendonly
flag to yes
.Specifically, this is the relevant bit of documentation from the redis config file comments:
# Note that you can have both the async dumps and the append only file if you # like (you have to comment the "save" statements above to disable the dumps). # >> Still if append only mode is enabled Redis will load the data from the # >> log file at startup ignoring the dump.rdb file.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With