For 2.6 you could use the DUMP and RESTORE commands.
An alternative way, that works for all verions, would be to simply write
a script that reads all the key's data from the first redis server and
issues commands to recreate it on the second redis server. You need to
do this differently for each data type, but it should be quite easy. You
can even use TYPE to find out the data type of the key, if you don't
know it.
As an example, lets say the key stores a list. Get the list's elements
on server 1 using LRANGE mylist 0 -1. Then run the following on server 2:
DEL mylist
RPUSH mylist "[element 1]"
RPUSH mylist "[element 2]"
...
Possibly wrap all that inside MULTI ... EXEC, if atomicity is important.
You can push several elements with each RPUSH too. Just keep in mind
that large commands will be fully buffered in memory and add latency for
other clients when executed (may not be a problem at all). Make sure to
use pipelining for the best performance.
Other types need to be handled differently, but you get the idea. I
think this is what I would have done.
Cheers,
Hampus