Как установить redis на windows

Обновлено: 06.07.2024

Redis является полностью открытым исходным кодом и бесплатен, соответствует протоколу BSD и является высокопроизводительной базой данных ключей.

Redis и другие продукты кэширования ключ-значение имеют следующие три характеристики:

  • Redis поддерживает сохранение данных и может сохранять данные в памяти на диск и загружать их снова для использования при перезапуске.
  • Redis не только поддерживает простые данные значения ключа, но также обеспечивает хранение структур данных, таких как list, set, zset и hash.
  • Redis поддерживает резервное копирование данных, то есть резервное копирование данных в режиме master-slave.

Redis преимущество

  • Чрезвычайно высокая производительность - Redis может читать со скоростью 110 000 раз / с и записывать со скоростью 81 000 раз / с.
  • Богатые типы данных - Redis поддерживает операции с типами данных Бинарные типы Строки, Списки, Хэши, Наборы и Упорядоченные наборы.
  • Атомные-все операции в Redis являются атомарными, что означает, что они либо выполняются успешно, либо полностью завершаются неудачей. Одна операция является атомарной. Множественные операции также поддерживают транзакции, то есть атомарность, упакованную с помощью инструкций MULTI и EXEC.
  • Богатые возможности - Redis также поддерживает публикацию / подписку, уведомление, срок действия ключа и т. Д.

Установить под окном

Redis поддерживает 32-битные и 64-битные. Это должно быть выбрано в соответствии с реальной ситуацией вашей системной платформы, здесь мы загружаемRedis-x64-xxx.zipСожмите пакет на диск C и после распаковки переименуйте папку вredis。


Откройте папку, содержимое выглядит следующим образом:


Открыть одинcmdОкно Используйте команду cd для переключения каталога вC:\redisRun:

Если вы хотите сделать это удобным, вы можете добавить путь redis к переменным окружения системы, чтобы вам не нужно было вводить путь снова. Последний redis.windows.conf может быть опущен. Если опущен, по умолчанию будет включен. После ввода отобразится следующий интерфейс:

Redis

В это время открывается новое окно cmd. Не закрывайте исходное окно, иначе вы не сможете получить доступ к серверу.

Перейдите в каталог redis и запустите:

Установите пары ключ-значение:

Выньте пару ключ-значение:

Redis

Файл конфигурации Redis находится в каталоге установки Redis, а имя файла - redis.conf.

Вы можете пройтиCONFIGКоманда для просмотра или установки элементов конфигурации.

грамматика

Формат команды Redis CONFIG выглядит следующим образом:

примеров

использование*Получить все элементы конфигурации: redis 127.0.0.1:6379> CONFIG GET *

Изменить конфигурацию

Вы можете изменить файл redis.conf или использоватьCONFIG setКоманда для изменения конфигурации.

грамматика

CONFIG SETОсновной синтаксис команды:

примеров

Описание параметра

Элементы конфигурации redis.conf описываются следующим образом:

1. Redis не запускается как демон по умолчанию, вы можете изменить его с помощью этого элемента конфигурации, используйте yes для включения демона

daemonize no

2. Когда Redis работает как демон, Redis по умолчанию записывает pid в файл /var/run/redis.pid, который может быть указан в pidfile.

pidfile /var/run/redis.pid

3. Укажите порт прослушивания Redis. Порт по умолчанию - 6379. Автор объяснил в своем блоге, почему 6379 выбран в качестве порта по умолчанию, поскольку 6379 - это число, соответствующее MERZ на кнопке телефона, а MERZ взято из имени итальянской певицы Алессии Мерц.

port 6379

4. Связанный адрес хоста

bind 127.0.0.1

5. Если клиент долгое время не используется, чтобы закрыть соединение, если указано значение 0, это означает, что функция закрыта

timeout 300

6. Укажите уровень ведения журнала. Redis поддерживает всего четыре уровня: отладка, подробный, уведомление, предупреждение, по умолчанию - подробный.

loglevel verbose

7. Режим ведения журнала, по умолчанию используется стандартный вывод. Если Redis настроен для запуска в качестве процесса-демона, а режим ведения журнала настроен здесь как стандартный вывод, журнал будет отправлен в / dev / null.

logfile stdout

8. Установите количество баз данных, база данных по умолчанию равна 0, вы можете использовать команду SELECT <dbid>, чтобы указать идентификатор базы данных для соединения.

databases 16

9. Укажите, сколько операций обновления в течение длительного времени данные будут синхронизированы с файлом данных, могут быть объединены с несколькими условиями

save <seconds> <changes>

В файле конфигурации Redis по умолчанию представлены три условия:

save 900 1

save 300 10

save 60 10000

Это означает, что 1 изменение в течение 900 секунд (15 минут), 10 изменений в течение 300 секунд (5 минут) и 10 000 изменений в течение 60 секунд.

10. Укажите, следует ли сжимать данные при сохранении в локальной базе данных. По умолчанию - да. Redis использует сжатие LZF. Если вы хотите сэкономить время ЦП, вы можете отключить эту опцию, но это приведет к увеличению размера файла базы данных.

rdbcompression yes

11. Укажите имя файла локальной базы данных, значением по умолчанию является dump.rdb

dbfilename dump.rdb

12. Укажите каталог хранилища локальной базы данных

dir ./

13. Установите IP-адрес и порт главной службы, если машина является службой Slav. При запуске Redis она автоматически синхронизирует данные с главной машины.

slaveof <masterip> <masterport>

14. Когда мастер сервис защищен паролем, сервис slav подключается к паролю мастера

masterauth <master-password>

15. Установите пароль подключения Redis. Если пароль подключения настроен, клиенту необходимо указать пароль с помощью команды AUTH <пароль> при подключении к Redis. Значение по умолчанию закрыто.

requirepass foobared

maxclients 128

17. Укажите максимальный лимит памяти для Redis. Redis будет загружать данные в память при запуске. После достижения максимального объема памяти Redis сначала попытается очистить ключ, срок действия которого истекает или вот-вот истекает. После того, как этот метод обработан, максимальный объем памяти все еще достигнут. Установите, вы больше не можете писать, но вы все еще можете читать. Новый механизм vm Redis сохранит ключ в памяти, а значение будет сохранено в области подкачки.

maxmemory <bytes>

18. Укажите, следует ли вести журнал после каждой операции обновления. По умолчанию Redis записывает данные на диск асинхронно. Если он не включен, это может привести к потере данных в течение периода времени, когда питание отключено. Поскольку сам Redis синхронизирует файлы данных в соответствии с вышеуказанными условиями сохранения, некоторые данные будут существовать в памяти только в течение определенного периода времени. По умолчанию нет

appendonly no

19. Укажите имя файла журнала обновлений, по умолчанию это appendonly.aof

appendfilename appendonly.aof

20. Укажите условия обновления журнала, есть 3 необязательных значения:
no: Указывает, что операционная система синхронизирует кэш данных с диском (быстро)
always: Указывает, что после каждой операции обновления вручную вызывайте fsync () для записи данных на диск (медленно, безопасно)
everysec: Указывает на синхронизацию один раз в секунду (компромисс, по умолчанию)

appendfsync everysec

21. Укажите, следует ли включить механизм виртуальной памяти. Значение по умолчанию: Нет. Вкратце, механизм виртуальной памяти хранит данные на страницах. Redis свопирует страницы с меньшим доступом, а именно холодные данные, к диску. Обмен в память (я буду тщательно анализировать механизм виртуальных машин Redis в следующей статье)

vm-enabled no

22. Путь к файлу виртуальной памяти, значением по умолчанию является /tmp/redis.swap, которое не может использоваться несколькими экземплярами Redis

vm-swap-file /tmp/redis.swap

23. Храните все данные, большие, чем vm-max-memory, в виртуальной памяти, независимо от того, насколько мал параметр vm-max-memory, все данные индекса хранятся в памяти (данные индекса Redis являются ключами), то есть, когда vm Когда -max-memory установлен в 0, все значения фактически существуют на диске. Значение по умолчанию 0

vm-max-memory 0

24. Файл подкачки Redis разделен на множество страниц. Объект может быть сохранен на нескольких страницах, но страница не может использоваться несколькими объектами. Vm-page-size устанавливается в соответствии с размером хранимых данных. Автор Рекомендуется, чтобы при хранении большого количества небольших объектов размер страницы был лучше всего равен 32 или 64 байтам, а если вы храните очень большие объекты, вы можете использовать страницу большего размера, если вы не уверены, использовать значение по умолчанию.

vm-page-size 32

25. Установите количество страниц в файле подкачки.Так как таблица страниц (растровое изображение, указывающее, что страница свободна или используется) помещается в память, каждые 8 ​​страниц на диске будут занимать 1 байт памяти.

vm-pages 134217728

26. Установите число потоков для доступа к файлу подкачки. Лучше не превышать номер ядра машины. Если установлено значение 0, то все операции над файлом подкачки являются последовательными, что может привести к длительной задержке. Значение по умолчанию 4

vm-max-threads 4

27. Установите, следует ли объединять меньшие пакеты в один при отправке клиенту, по умолчанию включено

glueoutputbuf yes

28. Укажите специальный алгоритм хеширования, когда определенное число превышено или самый большой элемент превышает определенный порог

hash-max-zipmap-entries 64

hash-max-zipmap-value 512

29. Укажите, нужно ли активировать хэш сброса, по умолчанию включено (позже введено в алгоритм хэширования Redis)

activerehashing yes

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

include /path/to/local.conf

Redis поддерживает пять типов данных: строка (строка), хэш (хэш), список (список), набор (набор) и zset (отсортированный набор: упорядоченный набор).

String (String)

Строка - это самый базовый тип redis, вы можете понимать его как тот же тип, что и Memcached, один ключ соответствует одному значению.

Тип строки является двоичным безопасным. Это означает, что строка redis может содержать любые данные. Такие как изображения jpg или сериализованные объекты.

Тип строки - это самый базовый тип данных Redis. Значение типа строки может хранить до 512 МБ.

примеров

В приведенном выше примере мы использовали RedisSETиGETCommand. Ключ это имя и соответствующее значениеrunoob。

Примечание:Один ключ может хранить до 512 МБ.

Хэш (хэш)

Redis-хэш - это набор пар ключ-значение (ключ => значение).

Redis hash - это таблица отображения поля и значения типа string. Hash особенно подходит для хранения объектов.

примеров

В примере мы использовали RedisHMSET, HGETКоманда,HMSETУстановлены две пары field => value, HGET получает соответствующийfieldсоответствующийvalue。

Каждый хэш может хранить 232-1 пары ключ-значение (более 4 миллиардов).

Список (список)

Списки Redis - это простые списки строк, отсортированные в порядке вставки. Вы можете добавить элемент в начало (слева) или хвост (справа) списка.

примеров

В списке может храниться до 232 элементов (4294967295, каждый список может хранить более 4 миллиардов).

Набор (коллекция)

Redis Set - неупорядоченная коллекция строкового типа.

Коллекция реализуется через хеш-таблицу, поэтому сложность добавления, удаления и поиска - все это O (1).

печальная команда

Добавьте строковый элемент в набор, соответствующий ключу, и в случае успеха верните 1. Если элемент уже возвращает 0 в наборе, верните ошибку, если набор, соответствующий ключу, не существует.

примеров

Примечание:В приведенном выше примере rabitmq был добавлен дважды, но в соответствии с уникальностью элементов в наборе элементы, вставленные во второй раз, будут игнорироваться.

Максимальное количество членов в наборе составляет 232-1 (4294967295, каждый набор может хранить более 4 миллиардов членов).

zset (отсортированный набор: упорядоченный набор)

Redis zset, как и set, также является коллекцией элементов строкового типа и не допускает дублирования элементов.

Разница в том, что каждый элемент связан с двойной оценкой типа. Redis использует счет, чтобы отсортировать участников набора от маленького до большого.

Члены zset уникальны, но счет можно повторить.

задд команда

Добавить элемент в коллекцию, если элемент существует в коллекции, обновить соответствующий счет

Rdis - сетевое журналируемое хранилище данных типа “ключ — значение” с открытым исходным кодом. Как правило, данное программное средство используется как нереляционная высокопроизводительная СУБД. В ней можно хранить строки, хэши, списки и многое другое.

Об этой статье

Данная статья не является руководством по работе с Redis (для этого можете посетить официальный сайт). В данной статье мы рассмотрим как связать Redis и PHP.

Установка Redis

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

Установка Redis на Linux

Для установке Redis на Linux вам потребуется TCL. Запустите команду:

$ sudo apt-get install tcl

Для установки Redis:

Заметка: значение 2.8.19 замените на номер текущей стабильной версии.

Все бинарные файлы будут сохранены в каталоге SRC. Для запуска сервера:

Установка Redis на Windows

Для установки Redis на Windows просто скачайте последний пакет и следуйте инструкциям.

Установите Predis - клиент для PHP. Для этого скопируйте его с GitHub в папку с проектом:

Подключение к Redis

Для начала подключаем автозагрузчик Redis. Затем помещаем код в блок try/catch. Подключение к локальному Redis выглядит несколько иначе, чем к удалённому.

Теперь, когда подключение произошло, можем приступать к работе с Redis.

Типы данных в Redis

Redis поддерживает целый ряд типов данных. Вы можете спросить какое это имеет значение для NOSQL базы данных? Это позволяет хранить данные в том виде, в котором это целесообразней и в некоторых случаях влияет на скорость доступа к данным.

  • Строка: обычные наборы символов.
  • Список: линейный массив.
  • Хэш-таблицы: ассоциативные массивы.
  • Множества: набор уникальных значений.
  • Упорядоченные множества: множества упорядоченные по параметру “score”.

Есть ещё и другие типы данных, такие как битмапы и иероглифы, но их мы рассматривать не будем.

Геттеры и сеттеры

Инкремент и декремент

INCR и DECR - это команды, использующиеся для увеличения и уменьшения значения.

Для увеличения/уменьшения более чем на 1, можете воспользоваться командами INCRBY и DECRBY .

Работа с списками

Для работы со списками вам понадобятся команды:

  • LPUSH: помещает элемент в начало списка
  • RPUSH: помещает элемент в конец списка
  • LPOP: извлекает первый элемент из списка
  • RPOP: извлекает последний элемент из списка
  • LLEN: получение размерности списка
  • LRANGE: получение нескольких элементов списка

Просто использование списков:

Работа с хэш-таблицами

Как уже упоминалось, данный тип можно сопоставить с ассоциативными таблицами. Команды:

  • HSET: установка элемента ключ-значение
  • HGET: извлечение элемента ключ-значение
  • HGETALL: извлечение всех элементов
  • HMSET: установка нескольких элементов ключ-значение
  • HDEL: Удаление элемента по ключу
  • HINCRBY: увеличить элемент ключ-значение.

Работа с множествами

Список команд: – SADD : добавление числа N ключу – SREM : удаление числа N ключу – SISMEMBER : проверка существование значения – SMEMBERS : набор всех значений.

Работа с упорядоченными множествами

Поскольку Redis хранит данные в памяти, то они не могут располагаться там вечно. Поэтому нам понадобится возможность установить EXPIRE , EXPIREAT , TTL , PERSIST – EXPIRE : время истечения срока хранения в секундах, после чего элемент будет удалён – EXPIREAT : истечение срока unix timestamps – TTL : получить значение оставшегося времени – PERSIST : сброс истечения срока.

Мы рассмотрели лишь самые необходимые команды. Все остальные можно найти на сайте Redis.

5 последних уроков рубрики "PHP"

Фильтрация данных с помощью zend-filter

Когда речь идёт о безопасности веб-сайта, то фраза "фильтруйте всё, экранируйте всё" всегда будет актуальна. Сегодня поговорим о фильтрации данных.

Контекстное экранирование с помощью zend-escaper

Обеспечение безопасности веб-сайта — это не только защита от SQL инъекций, но и протекция от межсайтового скриптинга (XSS), межсайтовой подделки запросов (CSRF) и от других видов атак. В частности, вам нужно очень осторожно подходить к формированию HTML, CSS и JavaScript кода.

Подключение Zend модулей к Expressive

Expressive 2 поддерживает возможность подключения других ZF компонент по специальной схеме. Не всем нравится данное решение. В этой статье мы расскажем как улучшили процесс подключение нескольких модулей.

Совет: отправка информации в Google Analytics через API

Подборка PHP песочниц

Подборка из нескольких видов PHP песочниц. На некоторых вы в режиме online сможете потестить свой код, но есть так же решения, которые можно внедрить на свой сайт.

Это ускоренный курс по Redis. Вы узнаете, как установить Redis и запустить сервер. Кроме того, вы будете возиться с командной строкой Redis. Далее следуют более сложные темы, такие как репликация, сегментирование и кластеризация, а также объясняется интеграция Redis с Spring Data. Проверьте это здесь !

Содержание

1. Введение

«Redis — это открытый исходный код, лицензированный BSD, продвигающий хранилище значений ключей. Его часто называют сервером структуры данных, поскольку ключи могут содержать строки, хэши, списки, наборы и отсортированные наборы ».

Не говоря уже о встроенной поддержке публикации / подписки, кластеризации (экспериментальной), шардинга, репликации и семантики транзакций. Цель данного руководства — предоставить краткое, но в то же время исчерпывающее руководство по миру Redis, пройдя через его установку, настройку и функции.

Хороший способ думать о Redis — это хранилище данных в памяти. Если ваши данные помещаются в память, вы получите от них максимум, и поэтому Redis довольно часто используется в качестве расширенного решения для кэширования (вместо Memcached). Но как только ваши данные перестают помещаться в памяти, вы увидите значительное снижение производительности, вызванное переключением на диск. Позже в уроке мы вернемся к этой теме и посмотрим, какие еще есть варианты.

Последняя версия Redis на момент написания этой статьи — 2.8.4 и именно эту версию мы будем использовать на протяжении всего урока.

2. Лицензия

Redis — это программное обеспечение с открытым исходным кодом, выпущенное на условиях лицензии BSD из трех пунктов. Подробнее на официальном сайте Redis .

3. Документация

4. Установка Redis в Linux

или (если у вас установлен Linux 32bit)

Стоит отметить, что Redis не имеет каких-либо особых требований или зависимостей, ни во время выполнения, ни во время компиляции, и совместим с большинством дистрибутивов Linux. Единственные предустановленные пакеты, которые вам нужны — это gcc и make.

По умолчанию псевдонимы для двоичных файлов Redis будут создаваться в папке /usr/local/bin . Для получения дополнительной информации файл README является отличным местом для поиска дополнительных сведений (таких как изменение папки установки по умолчанию, устранение распространенных ошибок при сборке и т. Д.).

5. Установка Redis в Windows

  • Windows 32 bit: bin/release/redisbin.zip
  • Windows 64 бит: bin/release/redisbin64.zip

6. Проверка правильности установки

После завершения установки на вашем Linux-компьютере должны быть следующие исполняемые файлы, расположенные в папке /usr/local/bin/ :

* Эти инструменты очень полезны, если вам нужно восстановить поврежденные данные

Установка Windows (созданная с нуля или извлеченная из предварительно созданного архива) состоит из следующих исполняемых файлов, отражающих Linux:

  • Redis-benchmark.exe
  • Redis-регистрация aof.exe
  • Redis-регистрация dump.exe
  • Redis-cli.exe
  • Redis-server.exe

Это сэкономит вам много времени, если папка, содержащая эти исполняемые файлы, будет добавлена ​​в PATH среды Windows PATH .

7. Базовая конфигурация

Redis поддерживает довольно сложные параметры конфигурации, включая постоянство, сегментирование, кластеризацию, репликацию… Некоторые параметры конфигурации требуют перезапуска сервера, но некоторые могут быть изменены во время выполнения с redis-cli инструмента redis-cli .

Но хорошая вещь (для начинающих) в конфигурации Redis заключается в том, что конфигурации вообще нет! Redis может быть запущен без единой настройки и будет работать отлично.

Есть несколько способов запустить сервер Redis. Это самый простой способ — запустить redis-server (или redis-server.exe в Windows) без указания какой-либо конфигурации. После запуска полнофункциональный сервер Redis готов к обработке запросов, прослушивая порт по умолчанию 6379 .

На рисунке ниже показан типичный вывод на консоли Linux, когда сервер Redis запускается успешно. Первая строка предупреждает об отсутствии файла конфигурации, поэтому конфигурация по умолчанию является местом разговора. И это еще один способ, которым Redis сияет: простота как можно проще делает его действительно простым для начала, добавляя более продвинутые опции конфигурации (когда вам это действительно нужно).

Рисунок 1. Типичный вывод консоли при запуске Redis с конфигурацией по умолчанию

Рисунок 1. Типичный вывод консоли при запуске Redis с конфигурацией по умолчанию

Небольшое изменение предыдущего потока включает передачу файла конфигурации и желаемого порта для прослушивания входящих соединений:

Параметр порта, если он указан, переопределяет параметр из файла конфигурации. На рисунке ниже показано, как может выглядеть вывод Redis в этом случае.

Рисунок 2. Типичный вывод на консоль, когда Redis запускает файл конфигурации и порт, указанный в качестве аргументов командной строки

Рисунок 2. Типичный вывод на консоль, когда Redis запускает файл конфигурации и порт, указанный в качестве аргументов командной строки

Сервер Redis, запущенный любым из этих способов, можно остановить, нажав Ctrl+C

Если вы хотите запустить Redis таким способом (используя сценарии инициализации), файл /etc/redis/6379.conf следует немного изменить, чтобы установить пару важных параметров конфигурации:

  • daemonize должно быть установлено значение yes (по умолчанию установлено значение no )
  • pidfile должен быть установлен в /var/run/redis_6379.pid (что соответствует номеру порта экземпляра Redis и соглашению об имени файла конфигурации)
  • logfile должен быть установлен в /var/log/redis_6379.log (следуя тем же соглашениям, что и pidfile )
  • dir должен быть установлен в / var / redis / 6379 (следуя тем же соглашениям, что и pidfile и pidfile )

Пожалуйста, обратитесь к разделу Базовая конфигурация , чтобы получить более подробное объяснение, что означают эти параметры конфигурации и их значение.

9. Сначала посмотрите на Redis CLI

Лучший и самый простой способ изучить Redis на полную мощность — это интерфейс командной строки redis-cli redis-cli.exe ( redis-cli.exe в Windows). Он очень прост в использовании, плюс имеет краткую справку для каждой команды Redis и поддерживает навигацию по истории команд (с помощью стрелок Up и Down ).

Когда redis-cli , он сразу же пытается подключиться к экземпляру Redis, предполагая, что он работает на локальном компьютере ( 127.0.0.1 ) и по умолчанию ( 6379 ). Если это не так, инструмент говорит вам об этом.

Рисунок 3. Redis-cli запускается и пытается подключиться к локальному экземпляру Redis

Рисунок 3. redis-cli запускается и пытается подключиться к локальному экземпляру Redis

Кроме того, redis-cli может использоваться для подключения к удаленным экземплярам Redis, когда имя хоста и порт предоставляются в качестве аргументов командной строки:

Предполагая, что наш сервер Redis работает на локальном компьютере, давайте запустим redis-cli и redis-cli нашу первую команду, чтобы убедиться, что сервер готов обслуживать запросы.

Рисунок 4. Redis-cli запускается и подключается к локальному экземпляру Redis

Рисунок 4. redis-cli запускается и подключается к локальному экземпляру Redis

Команда PING — это самый простой и свободный от побочных эффектов способ заставить сервер Redis отправлять PONG в ответ, подтверждая, что он работает и готов. Чтобы получить немного больше информации о том, для чего PING команда PING , HELP PING показывает краткий обзор этого.

Рисунок 5. Выдача команды PING из redis-cli и подтверждение того, что сервер отвечает PONG

Рисунок 5. Выдача команды PING из redis-cli и подтверждение того, что сервер отвечает PONG

Несмотря на свою простоту, redis-cli чрезвычайно полезен. Это позволяет не только отправлять команды на сервер Redis, но и изменять конфигурацию, отслеживать текущую активность и многое, многое другое.

10. Что дальше

В следующем разделе мы будем проводить гораздо больше времени с Redis CLI, пробуя различные команды и охватывая все структуры данных Redis.

Могу ли я запустить Redis в Windows?

Имейте в виду, что наиболее одобренный ответ ссылается на устаревшее хранилище с очень старой версией Redis. Если вам нужна более новая версия, проверьте ссылку для MSOpenTech только что объявил о готовой сборке Redis 2.8.4. Похоже, мои инструкции по сбору всех битов все еще актуальны.

Redis одним щелчком мыши установить в качестве службы Windows:

Скачайте и запустите верхний .exe (игнорируйте кнопку «скачать как zip»)

Изменить: Для последних версий Redis для Windows посмотрите на MSOpenTech/redis . См . Ответ Тодда Меньера для получения дополнительной информации.

Был не один щелчок для меня. Я запустил исполняемый файл и до сих пор не уверен, как его запустить После запуска программы установки мне пришлось вручную поместить файл redis.conf в папку c: \ Program Files \ Redis, как описано в файле readme. Я только что скопировал c: \ program files \ Redis \ conf \ redis-dist.conf. Тогда я мог бы запустить службу из панели управления службами (или «net start redis» из командной строки) Мне пришлось отредактировать сервис и изменить учетную запись на «локальную систему», иначе сервис не запустился бы. Мне не нужно было копировать любые файлы конфигурации. Следует отметить, что это очень старый порт, почти 3 года. Смотрите мой ответ для запуска (почти) современного порта MSOpenTech и связанной службы наблюдения.

Обновить

Если у вас есть Windows Subsystem for Linux (WSL) , изначально на Windows 10 и Windows Server 2019 вы можете сделать это за ответ Ogglas

Я нашел еще один простой способ установки Redis под Windows

Загрузите последний Redis .msi файл с

после установки. Сервис Redis установлен, мы можем управлять им с Service manager

введите описание изображения здесь

Да, лучшее решение, хотя я проголосовал за решение выше. Для этого не требуется запускать redis-server.exe. Похоже, работа остановилась на 3.2 перед выпуском, но Redis теперь на 4.0 Самый простой способ получить экземпляр покраснения под окнами.

Если вы хотите установить последний порт Redis MSOpenTech на сервере Windows, за которым следит служба Windows, без необходимости что-либо создавать самостоятельно, продолжайте читать.

MSOpenTech, кажется, единственный порт, который активно пытается идти в ногу с последним и лучшим Redis. Они утверждают, что оно готово к работе , но они точно не упаковали его аккуратно для установки на сервере, особенно если вы хотите запустить службу RedisWatcher, чтобы следить за ней, что рекомендуется. (Я пытался собрать RedisWatcher самостоятельно в соответствии с их инструкциями, но необходимый набор инструментов Wix сумел довольно сильно испортить мою систему. Я не буду вдаваться в подробности.) К счастью, они предоставили все необходимые вам двоичные файлы, но не все в одном месте. , От README :

Пока RedisWatcher не переносится на 2.6. Однако это не должно зависеть от версии Redis, и код в ветке 2.4 должен работать с двоичными файлами Redis 2.6.

Таким образом, вам нужно скачать двоичные файлы из 2 веток, чтобы получить все необходимые биты. Без лишних слов, вот шаги:

  1. Загрузите и распакуйте бинарные файлы Redis из ветки 2.6
  2. Скопируйте все извлеченные двоичные файлы в c: \ redis \ bin
  3. Создайте другую папку в c: \ redis \ inst1
  4. Загрузите и распакуйте двоичные файлы RedisWatcher из ветки 2.4
  5. Запустите InstallWatcher.msi. Это должно создать службу Windows под названием Redis Watcher.
  6. Откройте консоль служб Windows и запустите службу наблюдения Redis.
  7. (необязательно) RedisWatcher должен быть установлен в C: \ Program Files (x86) \ RedisWatcher. Там вы найдете файл конфигурации с именем watcher.conf, который вы можете отредактировать, чтобы настроить дополнительные экземпляры, использовать пути, отличные от указанных в шагах 2 и 3, и т. Д. Вам не потребуется перезапускать службу, чтобы изменения вступили в силу. ,
Вы будете рады попробовать это. Это работает (по крайней мере на моем 64-битном сервере Windows 2008 R2). Занимает у вас 5 минут. При запуске InstallWatcher.msi появляется приятная ошибка: проблема с этим пакетом установщика Windows. DLL, необходимая для завершения этой установки, не может быть запущена. Обратитесь в службу поддержки или к поставщику пакета. Redis 2.6.12 - последняя версия, которая работает на Windows Server 2003.

Самую последнюю версию Redis (за исключением нескольких небольших выпусков) можно найти здесь . Этот репозиторий предоставляет вам версию 3.2.100 (текущая версия 3.2), тогда как ответ с наибольшим количеством голосов дает вам только версию 2.4.6, а последнее обновление репо было 2 года назад.

Установка проста: просто скопируйте все из архива в любую папку и запустите redis-server.exe для запуска сервера и redis-cli.exe для подключения к этому серверу через оболочку.

Это просто, если вы просто хотите запустить exe-файл, чего я бы никогда не сделал в производственной среде без службы наблюдателя, и они не предоставили двоичные файлы для этого в ветке 2.6 по любой причине. К счастью, версия 2.4 сервиса совместима с версией 2.6 exe - посмотрите мой ответ, чтобы все это заработало. @ToddMenier, скорее всего, никто не будет запускать exe в производственной среде, потому что люди будут использовать некоторые системы Linux для этого. Вот как настроить redis, чтобы иметь возможность играть с ним и учиться (и я не понимаю, зачем мне здесь запускать несколько экземпляров redis) Я запускаю его в производство, и он прекрасно работает. Тем не менее, при прочих равных вы правы, Linux - это путь. Но мы - небольшой магазин Windows без особого опыта * nix. +1 (за трюк с img). PS - Как я могу заставить мои окна запускать сервер Redis без входа пользователя? есть ли какая-либо служебная версия для исполняемого файла сервера redis? например - там сервер был сброшен, и теперь появляется окно входа в систему. но я хочу, чтобы сервер redis - в этот момент - работал. Спасибо, Сальвадор. Это было как раз то, что я искал. Чтобы выразить свою благодарность, я просто дал вам двойной кредит. Один голос за правильный ответ, и один голос за то, что он отвел меня от устаревшего, но наиболее голосуемого ответа.

Чтобы установить Redis для Windows

Вы можете выбрать любой из этих источников

Лично я предпочел первый вариант

Распакуйте zip в подготовленный каталог

запустить redis-server.exe или redis-server.exe --maxheap 2gb

введите описание изображения здесь

введите описание изображения здесь

введите описание изображения здесь

Вы можете начать использовать Redis сейчас, пожалуйста, обратитесь к командам

Это работало для меня (почтовый индекс), я попробовал с MSI, который указан в той же ссылке, но не работал. Обратите внимание, что вы можете получить поведение, при котором вы нажимаете «redis-server.exe», и ничего не происходит. На самом деле, вам нужно запустить этот exe из командной строки и указать параметр «--maxheap». Что-то вроде . "redis-server --maxheap 1024M" Это окончательный ответ. Самый простой и надежный способ получить «официальный» redis на windows. ТНХ Пожалуйста, обратите внимание: просто получите последнюю версию. Удачного кодирования!

Может быть, немного поздно, но я смог запустить Redis в Windows 10 Aniversary Update.
Windows 10 Anniversary Update поставляется с Bash на Ubuntu на Windows , просто, он поставляется с Bash.

Ниже приведены два учебника, которым я следовал:

Ниже приведен образ запуска Redis.

Redis работает на порт 6379

Как примечание, я установил Ubuntu 18 из магазина Windows, и sudo apt install gcc make мне пришлось это сделать, прежде чем я смог установить и собрать Redis. Как вы получаете доступ к этой установке из Windows? вы получаете доступ к нему из Bash. и если вы запускаете приложение, такое как Laravel, вам просто нужно настроить переменные в файле среды, и Redis будет доступен в вашем проекте. Из-за его порта 6379 Это путь (WSL), но детали отсутствуют (находятся за ссылками). Ответ @Ogglas такой же, но с инструкциями по установке.

Перейдите к выпускам, и вы можете получить ZIP-файл, содержащий соответствующие файлы, а также документ Word, вызываемый RedisService.docx следующими инструкциями:

А потом позже, в том же документе, еще один пример:

Следующее установит и запустит три отдельных экземпляра Redis как службы:

redis-server --service-install -–service-name redisService1 –port 10001

redis-server --service-start --service-name redisService1

redis-сервер --service-install --service-name redisService2 –port 10002

redis-server --service-start --service-name redisService2

redis-сервер --service-install --service-name redisService3 –port 10003

redis-сервер --service-start --service-имя redisService3

Насколько я могу судить, это новый способ продвижения вперед, вместо того, чтобы связываться с отдельной службой Windows для мониторинга и перезапуска CLI.

Нужно ли устанавливать Visual Studio только для установки Redis в Windows? Как глупо. : | Спасибо, Игорь! Я обновил вводный абзац выше, чтобы отразить это изменение.
  • Затем установите его
  • открыть cmd с правами администратора
  • Команда Run net start redis
если вы не подключились к Redis Для Windows из командной строки, перейдите на CD C: \ Program Files \ Redis и затем на Redis-сервер

MS Open Tech недавно сделала версию Redis доступной для загрузки на Github. Они говорят, что это еще не производство, но следят за этим.

@arun Я только что проверил, и это работает. Может был сбой или гитхуб заблокирован для тебя? Хм, я даже залогинился. У меня все равно не работает. Но сейчас я использую решение Сальвадора Дали. Этот ответ устарел, новые версии не были выпущены с 2016 года. Последняя рекомендация - установить

Сначала загрузите MSI или ZIP-файл:

Посмотрите видеоинструкцию (видео охватывает пример обеих установок)

Чувак, было бы неплохо, если бы кто-то просто записал то, что было в видео. Не каждый может YouTube на работе.

Я не запускаю Redis на окнах. Слишком много хлопот связано с тем, чтобы не отставать от портов, и они все время отстают от redis-stable на одну или две версии.

Вместо этого я запускаю redis на виртуальной машине Vagrant, которая запускает redis для меня. Я укутан все дело в простой GitHub репо , так что каждый может получить в веселье без особых хлопот. Все это автоматизированная сборка, поэтому здесь нет беспорядка. Я в блоге о деталях здесь .

Как получить доступ к Redis после загрузки VM? по IP? Я думаю, что порт будет перенаправлен, если я не ошибаюсь @StephenPatten: Да, вы должны иметь доступ к нему по адресу localhost:6379 .

Я думаю, что это два самых простых способа запуска Redis на Windows

Как описано здесь в Варианте 3) Запуск собственного порта Microsoft Redis :

  1. Загрузите redis-latest.zip родной 64-битный Windows-порт redis
  1. Распакуйте файл redis64-latest.zip в любую папку, например, в c: \ redis

  2. Запустите redis-server.exe, используя локальную конфигурацию

  1. Запустите redis-cli.exe для подключения к вашему экземпляру redis

Вы можете использовать Redis в Windows с Vagrant, как описано здесь :

Также на этом сайте есть способ запустить Redis без vagrant. В windows 8 он был запущен через 2 минуты.

Алексис Кампайя,
генеральный директор Memurai

Как бы я ни ценил ваши усилия, это EULA - нет-нет. Проходить.

Если вы довольны небольшим количеством Powershell, вы также можете получить самые современные бинарные файлы для Windows, используя Powershell и Chocolatey.

Redis будет установлен в нечто вроде C: \ ProgramData \ chocolatey \ lib \ redis-64.2.8.9

Windows PowerShell Copyright (C) 2013 Корпорация Майкрософт. Все права защищены.

PS C: \ windows \ system32> choco install redis-64 Chocolatey (v0.9.8.27) устанавливает redis-64 и зависимости. При установке вы принимаете лицензию для 'redis-64' и каждую устанавливаемую зависимость.

redis-64 v2.8.9 Добавлена ​​Cim \ ProgramData \ chocolatey \ bin \ redis-benchmark.exe, указывающая на «.. \ lib \ redis-64.2.8.9 \ redis-benchmark.exe». Добавлена ​​прокладка C: \ ProgramData \ chocolatey \ bin \ redis-check-aof.exe, указывающая на «.. \ lib \ redis-64.2.8.9 \ redis-check-aof.exe». Добавлена ​​прокладка C: \ ProgramData \ chocolatey \ bin \ redis-check-dump.exe, указывающая на «.. \ lib \ redis-64.2.8.9 \ redis-check-dump.exe». Добавлена ​​прокладка C: \ ProgramData \ chocolatey \ bin \ redis-cli.exe, указывающая на «.. \ lib \ redis-64.2.8.9 \ redis-cli.exe». Добавлена ​​прокладка C: \ ProgramData \ chocolatey \ bin \ redis-server.exe, указывающая на «.. \ lib \ redis-64.2.8.9 \ redis-server.exe». Закончена установка 'redis-64' и зависимостей - если ошибки не отображаются в консоли, они не обнаружены. Проверьте журнал на наличие ошибок, если не уверены

Затем запустите сервер с

Следуйте инструкциям в C: \ ProgramData \ chocolatey \ lib \ redis-64.2.8.9 \ RedisService.docx для установки службы redis

Если у вас есть Windows Subsystem for Linux (WSL) , изначально на Windows 10 и Windows Server 2019 вы можете сделать это следующим образом:

Чтобы включить подсистему Windows для Linux, следуйте инструкциям в Microsoft Docs . Краткая версия: В Windows 10 Microsoft заменяет командную строку на PowerShell в качестве оболочки по умолчанию. Откройте PowerShell от имени администратора и выполните эту команду, чтобы включить подсистему Windows для Linux (WSL):

Перезагрузите Windows после внесения изменений - обратите внимание, что вам нужно сделать это только один раз.

Загрузите и установите один из поддерживаемых дистрибутивов Linux из Microsoft Store . Ubuntu работает отлично.

Установите и проверьте Redis:

Запустите установленный дистрибутив из вашего Магазина Windows, а затем установите Redis-сервер. Следующий пример работает с Ubuntu (вам нужно дождаться инициализации и создать логин при первом использовании):

Перезапустите сервер Redis, чтобы убедиться, что он работает:

Выполните простую команду Redis, чтобы убедиться, что ваш сервер Redis работает и доступен:

Redis

Redis (REmote DIctionary Server) - это нереляционная высокопроизводительная СУБД, сетевое хранилище данных типа «ключ - значение».

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

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

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

Изначально установку Redis сервера рекомендуется проводить из репозиториев используемой операционной системы. Предполагается, что последующие команды будут выполняться от имени пользователя root или при использование sudo (если Вы авторизованы не от пользователя root, рекомендуем выполнить sudo su).

Установка на DEB дистрибутивы (Ubuntu/Debian)

Сначала выполним обновление пакетов:

После чего непосредственно выполнив установку Redis сервера:

После завершения установки проверим работу установленного сервиса:

В случае успешной установки в ответ придет текст - PONG, если сервис не установился или не запустился, на экран будет выведена ошибка, о невозможности подключится к сервису или отсутствии команды redis-cli .

Если Redis сервер установлен и запустился, то он будет ожидать подключение на локальном интерфейсе 127.0.0.1 (localhost), порт стандартный - 6379.

Установка на RHEL (CentOS/BitrixOS)

Процесс установки почти не отличается от установки на Debian дистрибутивы. Сначала обновляем пакеты:

Выполняем установку Redis сервера:

Запускаем сервис и добавляем его в автозагрузку:

После чего проверим его работу:

В независимости от используемого дистрибутива Вы всегда можете установить последнюю версию Redis сервера, собрав её из исходных кодов по инструкции с официального сайта проекта Redis:

Настройка Redis

Для Ubuntu и Debian основной конфигурационный файл Redis сервера Вы найдете по пути /etc/redis/redis.conf, в CentOS (а также BitrixOS) конфигурация располагается в файле /etc/redis.conf.

Наиболее интересным будет параметр maxmemory , он задает ограничение использования оперативной памяти для хранения данных в Redis. По умолчанию Redis может использовать всю доступную память сервера, поэтому если сервер не обладает достаточным количеством постоянно свободной памяти (Вы можете просмотреть информацию о используемой памяти командой free -m ), то стоит задать этот параметр. Самым простым решением для выбора максимального объема памяти будет разделить среднее значение нескольких показаний свободной памяти ( free -m ) пополам.

Например, в течение часа показатели free -m были следующими:

Также в данном файле стоит обратить внимание на следующие параметры:

  • maxclients - количество разрешенных клиентов;
  • tcp-backlog - количество соединений которые могут находится в очереди, если все возможные соединения заняты;
  • save - условия, при которых данные будут записываться на диск. Данные Redis хранятся в оперативной памяти и в зависимости от значений save сохраняются на диск, что замедляет производительность, но повышает надежность хранения данных. Условию save передается два значение: количество секунд и количество изменений, если за указанное количество происходит указанное количество изменений, то данные будут сохранены на диск. По умолчанию параметры выглядят так:

save 900 1 - сохранить, если за 900 секунд будет хотя бы одно изменение;

save 300 10 - сохранить, если за 300 секунд будет хотя бы 10 изменений;

save 60 10000 - сохранить, если за 60 секунд будет 10000 и более изменений.

После внесения каких-либо изменений в конфигурационный файл Redis необходимо перезапустить.

Заключение

Теперь Вы знаете, как правильно устанавливать и настраивать Redis. Больше информации о конфигурации Redis сервера Вы можете получить из его документации:

Читайте также: