Копирование базы Redis с одного сервера на другой

 admin
  Статьи / Программирование / Redis

Одним из способов копирования данных из конкретной db Redis с одного сервера в указанную db Redis на другом сервере является следующий вариант.

Открываем ssh клиент и набираем в нем следующую коамнду

redis-cli -h $source_host -p $source_port -a $source_pass -n $source_db --scan --pattern '*' | while read key; do echo "Copying $key"; redis-cli --raw -h $target_host -p $target_port -a $target_pass -n $target_db DUMP "$key" | head -c -1|redis-cli -x -h $target_host -p $target_port -a $target_pass -n $target_db RESTORE "$key" 0; done

Где:

  • $source_host - IP адрес сервера, с которого копируем данные;
  • $source_port - порт, на котором поднят Redis на сервере, с которого копируем данные;
  • $source_pass - пароль, которым защищен Redis на сервере, с которого копируем данные;
  • $source_db - номер БД на сервере, с которого копируем данные;
  • $target_host - IP адрес сервера, на который копируем данные;
  • $target_port - порт, на котором поднят Redis на сервере, на который копируем данные;
  • $target_pass - пароль, которым защищен Redis на сервере, на который копируем данные;
  • $target_db - номер БД на сервере, на который копируем данные;

Также должны быть выполнены условия:

  • должен быть открыт доступ к порту $target_port на $target_host с $source_host;
  • если Redis на каком-либо из серверов не защищен паролем, то тогда из команды исключаем ключ -a;

После запуска команды, вы будете наблюдать процесс копирования, который сопровождается выводом строк вида

Copying 928F32EDA461026FE040A8C01E02395E:A7CD147C07E7CD1BE040A8C0630328EC:dateDeparture
OK

Так как приведенный вариант скрипта предполагает копирование в пустую БД, то если копируемый ключ уже есть в $target_db, то вы увидите строку вида

Copying 928F32EDA461026FE040A8C01E02395E:A7CD147C07E7CD1BE040A8C0630328EC:dateDeparture
(error) BUSYKEY Target key name already exists.

 0
 351
 14.03.2018


Напишите комментарий

только авторизованные пользователи могут оставлять комментарии


Рубрики

Помощь
  Общее
Статьи
  Поисковые системы
    Яндекс
    Google
  Программирование
    MySQL
    Redis
    PHP

Рекомендации

Теги

AOL, API, API Sape, CMS сайта, CheckTrust, Common Crawl, DMOZ, DNS, DNSBL, DateFormat, DateTime, Google, Harmonic Centrality, LinkOnAvt, LinkPad, MainLink, Moz, MozRank, NOODP, ODP, Open Directory Project, PageRank, PageSpeed, Panda, SEO, SERP, Solomono, TTFB, TTLB, Time To First Byte, Time To Last Byte, Visit Rank, Web of Trust, WoT, Xtool, Yii2, crawl-delay, domain authority, dump, expire, hSet, hashes, http status code, iGood, instr, like, mysql, page authority, redis, redis-cli, regexp, replace, restore, robots, sorted sets, substr, whois, zAdd, zRangeByScore, АГС, Баден-Баден, ИКС от Яндекс, Минусинск, Мои сайты, О сервисе, Общие вопросы, Работа с Sape, ТИЦ, ЧаВо, Яндекс, Яндекс.Вебмастер, внешние ссылки, внутренние ссылки, возраст домена, выдача, дата регистрации домена, домен, донор, интернет-магазин, информация, информация о домене, история проверок сайтов, исходящие ссылки, ключ, лог, метрика сайта, мои сайты - история версий, мониторинг доменов, мониторинг сайтов, настройки, обновление, определить CMS сайта, оптимизация, ошибка, панель сайтов, переоптимизирвоанные тексты, поиск битых ссылок, поиск редиректов на сайте, поиск ссылок, поисковые запросы, помощь, программа учета сайтов, продвижение сайта, продление домена, раскрутка, регистратор доменов, регистрация, сайт, семантическое ядро, скорость загрузки сайта, технический анализ сайта, технологии сайта, трафик, узнать cms сайта, узнать движок сайта, узнать систему сайта, узнать технологии сайта, фильтры отбора, яндекс метрика счетчик,

Статистика

Статей: 142
Комментариев: 1