2016-12-16 1 views
0

https://github.com/antirez/redis/issues/3689Не удается перенести ключ между Redis экземплярами

На машине RHEL (RedHat), установленного Redis 3.0.7 как Deamon: Давайте назовем это «А». На компьютере с Windows Server 2012 установлен Redis 3.2.1 как служба: назовем это «B».

Я хочу перенести ключ «IdentityRepo» от А до В. Для того чтобы достигнуть что я пытался выполнить следующую команду на Redis А.

migrate <IP of B> 6379 "IdentityRepo" 3 1000 COPY REPLACE 

Следующая ошибка:

(error) ERR Target instance replied with error: ERR DUMP payload version or checksum are wrong 

В чем может быть проблема?

+1

Попробуйте увеличить тайм-аут от 1000 мс до некоторого более высокого значения, а также вам нужно назначение db как 3 или по умолчанию 0 – Tuco

+0

Я согласен с @Tuco. Сделайте это значение 15000 – Antonis

+0

Я обновил текст ошибки выше. У меня была проблема с сетью. Теперь исправлена ​​эта ошибка, но возникла следующая ошибка: (ошибка) ERR Целевой экземпляр ответил с ошибкой: ERR DUMP версия полезной нагрузки или контрольная сумма ошибочны Речь идет не о значении тайм-аута ... Я тоже пробовал 15000 мс. Ничего не изменилось. – rebulanyum

ответ

0

версия кодирования была изменена между этими v3.0 до v3.2 за счет добавления быстрых списков, так MIGRATE, а также DUMP/RESTORE не будет работать в этом сценарии.

Чтобы обойти это, вам нужно будет прочитать значение из старой базы данных, а затем записать его на новый с помощью любого клиента Redis.

Смежные вопросы