1.Редактирование файла конфигурации
В целевом файле конфигурации Redis установлен
slaveof sourceIP sourcePort
slave-read-only no
Он будет эффективно реплицировать исходную базу данных в вашу новую, передав файл RDB.Затем вы можете закомментировать эти строки и закрыть исходный экземпляр.Обратите внимание, что старые ключи в целевом экземпляре не сохраняются и не перезаписываются.
Вам не поможет эта печальная история.
127.0.0.1: 6371> CONFIG SET slaveof "localhost 6370"
(ошибка) ERR Неподдерживаемый параметр CONFIG: slaveof
MIGRATE remotehost remoteport "" 0 5000 COPY KEYS *
Также не будет работать.Но есть обходной путь: https://stackoverflow.com/a/42686861/78569
redis-cli --raw KEYS '*' |xargs redis-cli MIGRATE my.redis 6379 "" 0 5000 KEYS
(пожалуйста, поддержите этого парня, если вы его использовали)
4.Сценарии оболочки
Вот сценарий, который направляет KEYS
вывод в MIGRATE
и добавляет некоторые другие функции: https://gist.github.com/nicStuff/ee7feb8eed00174a46db42812545b403
5.Загрузка RDB
Вы можете загрузить дамп RDB с протоколом Redis, даже если у вас нет доступа к файлу на сервере:
redis-cli -h <host> -p <port> --rdb /path/to/local/copy/dump.rdb