Migrate data between Redis servers
There is a reasonable simple way to move data between Redis servers: Simply temporarily configure the new server as a replica of the old server.
To do this:
- Make sure the new Redis server can access the old server. If they are on different networks, a simple SSH tunnel will do.
- Connect to the new server using
- Tail the log of the redis server (found in
/var/logs/redis) in another terminal.
- Make sure the server is currently master and not already a replica (check
- Enable replication with
REPLICAOF <host> <port>(on older Redis versions this is called
- Redis will then drop all current data and fetch everything from the master.
- Check the log. It will tell you if replication works and when it is done. It should usually only take a few seconds.
- Disable replication with
REPLICAOF no one.
This even works if the new server is itself master to other replicas.