Use Redis on Windows for development
Redis is not officially supported on Windows. However, you can install Redis on Windows for development by following the instructions below.
To install Redis on Windows, you’ll first need to enable WSL2 (Windows Subsystem for Linux). WSL2 lets you run Linux binaries natively on Windows. For this method to work, you’ll need to be running Windows 10 version 2004 and higher or Windows 11.
Install or enable WSL2
Microsoft provides detailed instructions for installing WSL. Follow these instructions, and take note of the default Linux distribution it installs. This guide assumes Ubuntu.
Install Redis
Once you’re running Ubuntu on Windows, you can follow the steps detailed at Install on Ubuntu/Debian to install recent stable versions of Redis from the official packages.redis.io
APT repository.
Add the repository to the apt
index, update it, and then install:
curl -fsSL https://packages.redis.io/gpg | sudo gpg --dearmor -o /usr/share/keyrings/redis-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] https://packages.redis.io/deb $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/redis.list
sudo apt-get update
sudo apt-get install redis
Lastly, start the Redis server like so:
sudo service redis-server start
Connect to Redis
You can test that your Redis server is running by connecting with the Redis CLI:
redis-cli
127.0.0.1:6379> ping
PONG
#База знаний
-
0
Пошаговое руководство по работе с популярной NoSQL базой данных.
vlada_maestro / shutterstock
Преподаватель Skillbox. Пишет про Java, учит Go. Помнит рассвет PHP и как «грабить корованы».
Просто и быстро установить Redis в ОС Windows позволяет Chocolatey. Это менеджер пакетов в среде Windows, аналогичный apt-get в мире Linux. С его помощью можно устанавливать множество программ и обновлять их, не скачивая каждый раз дистрибутив с сайта.
Действуем по инструкции с официального сайта проекта Chocolatey.
- Windows 7+ / Windows Server 2003+;
- PowerShell v2+. Для установки с сайта требуется как минимум v3 (из-за требований TLS 1.2);
- .NET Framework 4+. Программа попытается установить .NET 4.0, если он не установлен. Минимальная необходимая версия для установки с этого веб-сайта — 4.5 (из-за требований TLS 1.2).
Запустите консоль запуска команд, нажав WIN + R, и введите команду cmd. Если вверху выведена версия Windows, как на скриншоте, этого достаточно.
Если нет, введите команду systeminfo. В начале вывода должна появиться версия Windows.
Если у вас установлена версия 7 или выше — переходим к следующему шагу.
Для этого открываем PowerShell, вводим команду $PSVersionTable.PSVersion и получаем ответ:
На нашем скриншоте версия PowerShell 5.1. Если у вас версия ниже 3, необходимо установить PowerShell версии 3 (или выше). Инструкция есть по этой ссылке.
Запускаем редактор реестра: нажимаем WIN + R и выполняем команду regedit.
Переходим в раздел
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP и смотрим, какие папки там присутствуют:
Если нет такой ветки или отсутствует версия 4.0 и выше, то необходимо её установить. Подробная инструкция находится по этой ссылке.
После всех подготовительных действий устанавливаем Chocolatey. Это делается одной командой PowerShell.
Важно! До начала установки необходимо проверить, есть ли на это права. Если прав недостаточно, их нужно добавить.
В PowerShell необходимо убедиться, что Get-ExecutionPolicy не является Restricted. Рекомендуется использовать Bypass для снятия ограничений или AllSigned для более безопасного использования.
Выполните команду Get-ExecutionPolicy. Если она вернёт Restricted, запустите Set-ExecutionPolicy AllSigned (рекомендуется) или Set-ExecutionPolicy Bypass -Scope Process.
После этого введите команду установки:
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
Если всё прошло успешно, получим:
В этом случае можно переходить к установке пакетов приложений. В нашем случае это будет Redis.
Находим в поиске Chocolatey нужный пакет Redis, например, https://chocolatey.org/packages/redis-64/3.0.503 — и копируем (клавиши Ctrl-C) указанную на сайте ссылку для установки:
Примечание: после версии 3.0.503 текущий проект был переименован и больше не разрабатывался, однако для знакомства с Redis и её изучения подходит.
Затем вводим скопированную команду из буфера обмена (Ctrl-V) в консоль PowerShell:
choco install redis-64 --version 3.0.503
Если установка прошла нормально, получаем:
Теперь пробуем использовать Redis. Для этого запускаем сервер, выполнив команду:
Если у вас включён брандмауэр, разрешите в нём доступ к Redis. В консоли PowerShell должно появиться сообщение о том, что сервер Redis работает и принимает соединения.
После этого откройте ещё одно окно Powershell, не закрывая окно с запущенным сервером. В новом выполните команду:
Теперь вы можете использовать redis в командной строке для работы с сервером Redis:
Для использования в коде программы и для связи с сервером вам может понадобиться номер порта для подключения. Его можно найти в окне запуска Redis:
Жизнь можно сделать лучше!
Освойте востребованную профессию, зарабатывайте больше и получайте от работы удовольствие. А мы поможем с трудоустройством и важными для работодателей навыками.
Посмотреть курсы
Search code, repositories, users, issues, pull requests…
Provide feedback
Saved searches
Use saved searches to filter your results more quickly
Sign up
-
Главная
-
Инструкции
-
Redis
-
Установка и настройка Redis для разных ОС
Redis — это система управления базами данных, которая хранит данные в формате «ключ-значение»: уникальному ключу в БД соответствует некоторое значение. Данные в этой базе данных хранятся в оперативной памяти, благодаря чему запросы обрабатываются быстро.
Согласно рейтингу DB-Engines.com, Redis — это самая популярная СУБД «ключ-значение». Благодаря этому типу, архитектура базы и запросы к ней проще, чем в реляционных баз данных. Однако использовать привычный SQL на стандартном Redis не получится: придется работать с Lua-скриптами или устанавливать модифицированные версии, например RediSQL.
Redis лучше всего использовать в проектах, где нужна база данных с быстрым доступом к данным и простой схемой.
Чтобы вы могли комфортно использовать эту СУБД в своих проектах, мы подготовили материал по установке Redis на три операционные системы: на Windows, Ubuntu и CentOS. По завершении установки мы настроим Redis, после чего СУБД будет готова к работе.
Redis: установка на Windows
Есть два варианта установки Redis на Windows:
- установка портированной версии;
- установка в WSL или Docker.
В этом разделе мы разберем установку портированной версии. Если вы хотите установить в WSL, то:
- руководство по установке и настройке WSL в Windows 10 вы найдете в материале «Как установить Node.js на Windows» в разделе «Установка WSL»;
- инструкция по установке на Ubuntu описана чуть ниже в разделе «Установка на Ubuntu».
Портированная версия для Windows вышла довольно давно: в 2016 году. Она размещена на github и доступна для скачивания всем пользователями. Преимущества установки этой версии заключается в её простоте: для установки не потребуется дополнительная «прослойка» в виде Docker или WSL. Выбирайте порт для Windows, если не хотите усложнять процесс установки и вас устраивает 6-летняя версия.
Установка Redis на Windows
Шаг 1 — заходим в репозиторий на GitHub портированной версии по ссылке: https://github.com/microsoftarchive/redis.
Шаг 2 — переходим на вкладку «Releases».
Шаг 3 — выбираем последний релиз.
Шаг 4 — скачиваем файл с расширением .msi. На изображении он выделен синим цветом:
Шаг 5 — после загрузки откройте файл. Начнется установка.
Шаг 6 — во время установки инсталлятор предложит вам добавить Redis в PATH. Если хотите использовать СУБД из командной строки, проставьте галочку напротив этого пункта.
Шаг 7 — во время выбора порта рекомендуется оставить стандартное значение 6379.
Шаг 8 — после установки необходимо перезагрузить компьютер.
После загрузки компьютера проверим работоспособность Redis. Для этого в командной строке выполняем команду redis-server.
При её выполнении может возникнуть ошибка со следующим сообщением:
Проблема заключается в том, что Windows в автоматическом режиме после установки регистрирует службу, к которой привязывает порт 6379. Когда выполняется команда redis-server, исполнитель обращается к файлу конфигурации и использует порт по-умолчанию, т.е. 6379. Из-за этого возникает ошибка.
Чтобы её решить открываем командную строку и делаем следующее:
- переходим в каталог Redis командой cd;
- запускаем redis-cli.exe;
- выключаем сервер командой shutdown;
- выходим командой exit.
Вот набор команд для стандартного каталога:
После этих действий команда redis-server успешно выполнилась:
Настройки Redis описываются в двух файлах: redis.windows.conf и redis.windows-service.conf.
- Redis.windows-service.conf описывает настройки СУБД, запущенной в качестве службы. Этот формат подразумевает работу в фоновом режиме под управлением операционной системы (запуск при перезагрузке, перезапуск при сбоях и т.п).
- Redis.windows.conf относится к использованию СУБД из командной строки с помощью redis-cli. Это же относится и к использованию СУБД в своих скриптах.
Настройка этих файлов приведет к изменению работы Redis. В нашем случае настроек минимальное количество: СУБД прослушивает любые подключения. Это не совсем безопасно, поэтому позволим подключение к Redis только с localhost. Для этого в файлах конфигурации находим задокументированную строку #bind 127.0.0.1 и удаляем решетку «#»:
Установка Redis: Ubuntu 22.04
Устанавливать Redis на Ubuntu мы будем из официального репозитория. Также, эта инструкция подойдет для установки Redis на Debian.
Шаг 1 — в первую очередь обновим индексы пакетов apt:
sudo apt update
Шаг 2 — загружаем Redis:
sudo apt install redis-server -y
Проверить работоспособность можно командой sudo systemctl status redis:
Служба активна.
Установка Redis: CentOS 7
Устанавливать Redis будем на CentOS 7. В первую очередь установим EPEL (Extra Packages for Enterprise Linux) — это пакет с дополнительными репозиториями, которые не включены в стандартную версию CentOS. Установим их:
sudo yum install epel-release
Теперь мы можем установить redis:
sudo yum install redis -y
Через несколько минут редис будет установлен на компьютер. Чтобы включить редис в автозагрузку, выполняем следующую команду:
sudo systemctl enable redis
Настройка Redis осуществляется через изменение конфигурационных файлов. Они для всех версий будут одинаковыми. Поэтому, для наглядной настройки, мы настроим Redis на операционной системе Ubuntu и удаленно подключимся к ней с Windows.
Для осуществления базовой настройки нам необходимо изменить 2 параметра: открыть удаленное подключение и установить пароль.
Шаг 1 — генерируем пароль:
openssl rand 25 | openssl base64 -A
Вывод:
/37DQhAt5MBq/34Lj24Ppn5LI/UZksAZJQ==
Злоумышленники могут перебирать до 150 тысяч паролей в секунду, поэтому важно выбрать надежный пароль. Копируем полученный результат и переходим к конфигурационному файлу.
Шаг 2 — открываем конфигурационный файл:
sudo nano /etc/redis/redis.conf
Шаг 3 — изменяем конфигурацию.
Найдем в конфигурационном файле строку «bind 127.0.0.1 ::1» и закомментируем её с помощью #. Не закрывая файл, найдем строку «protected-mode yes» и заменим её на «protected-mode no». В раздел «Security» после строки #requirepass foobared добавляем строку со сгенерированным паролем:
requirepass /37DQhAt5MBq/34Lj24Ppn5LI/UZksAZJQ==
Закрываем файл и сохраняем все изменения.
Шаг 4 — перезапускаем Redis, чтобы изменения вступили в силу:
sudo systemctl restart redis.service
Шаг 5 — с помощью netstat проверяем, какие сетевые интерфейсы прослушивает Redis:
sudo netstat -lnp | grep redis
Шаг 6 — подключаемся удаленно. Попробуем подключиться к базе данных из командной строки Windows:
redis-cli -h 192.168.43.37 -p 6379 -a /37DQhAt5MBq/34Lj24Ppn5LI/UZksAZJQ==
Пропингуем СУБД:
192.168.43.37:6379> ping
PONG
И вставим кортеж:
192.168.43.37:6379> set key test
OK
192.168.43.37:6379> get key
"test"
Redis как DBaaS
DBaaS (database as a service) — это база данных, размещенная в облаке. Этот сервис похож на аренду сервера, только вместо виртуальной машины вы получаете базу данных. Такой вариант обладает рядом преимуществ:
- меньшее количество административных хлопот: не нужно обновлять СУБД и обслуживать оборудование;
- легкое масштабирование базы данных: если для вашего проекта потребовалась более производительная БД, то это легко сделать в панели управления;
- быстрый старт: СУБД будет установлена на старте;
- бесперебойная работа.
Заключение
В Timeweb.cloud есть услуга «Облачные базы данных» — уже готовое и настроенное решение. Если вы не хотите отягощать себя административными манипуляциями, то вы можете арендовать базу данных на Redis у Timeweb Cloud. Помимо Redis, Timeweb Cloud может предложить в качестве СУБД MySQL, PostgreSQL и MongoDB.
The ServiceStack/redis-windows project contains the binary releases of MS Open Tech redis port of windows as well as a vagrant configuration for redis letting you run the native version of Redis in a Virtual Box VM.
Whilst it’s recommended to use Redis on Linux in production, it is often useful for developers on Windows platforms to have their own local version of redis running to develop with.
The 3 most popular ways of running redis on windows is to use the binary releases of Microsoft’s native port of redis, but as this is an unofficial port it always lags behind the latest official development of redis on Linux/OSX.
Thanks to Vagrant you can choose to run the latest linux version inside a Virtual Box Linux VM where you’ll be able to run the official native version of redis.
Or from Windows 10 you can install Bash on Ubuntu on Windows which will let you run the official version of Redis on Ubuntu on Windows This is our preferred approach as it lets you run native Ubuntu binaries on Windows more efficiently than a VM of Linux.
Option 1) Install Redis on Ubuntu on Windows
Install Windows Subsystem for Linux (WSL)
From Command Line:
From GUI:
- From Start, search for Turn Windows features on or off (type
turn
) - Select Windows Subsystem for Linux
Once installed you can run bash on Ubuntu by typing bash from a Windows Command Prompt, then you can install recent stable versions of Redis from the official packages.redis.io
APT repository with:
curl -fsSL https://packages.redis.io/gpg | sudo gpg --dearmor -o /usr/share/keyrings/redis-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] https://packages.redis.io/deb $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/redis.list
sudo apt-get update
sudo apt-get install redis
After install, start the Redis server with:
sudo service redis-server start
Then test that it’s running with:
$ redis-cli
$ 127.0.0.1:6379> SET foo bar
OK
$ 127.0.0.1:6379> GET foo
"bar"
Install latest from source
To install the latest version of Redis we first need to install some prerequisites:
$ sudo apt-get update
$ sudo apt-get install make
$ sudo apt-get install gcc
Then follow the official installation guide
to download, build and install the latest stable version. NOTE: Installing
the binaries using make install
will not work. You need to copy them manually
to /usr/bin
(just like described in the guide, except that they use
/usr/local/bin
— which is the problem).
You’ll then be able to launch redis with:
redis-server —daemonize yes
Which will run redis in the background freeing your shell so you can play with it using the redis client:
$ redis-cli
$ 127.0.0.1:6379> SET foo bar
OK
$ 127.0.0.1:6379> GET foo
"bar"
Which you can connect to from within bash or from your Windows desktop using the redis-cli native Windows binary from MSOpenTech.
Option 2) Running the latest version of Redis with Vagrant
-
Install Vagrant on Windows
-
Download the vagrant-redis.zip vagrant configuration
-
Extract
vagrant-redis.zip
in any folder, e.g. inc:\vagrant-redis
-
Launch the Virtual Box VM with
vagrant up
$ cd c:\vagrant-redis
$ vagrant up
This will launch a new Ubuntu VM instance inside Virtual Box that will automatically install and start the latest stable version of redis.
Option 3) Running Microsoft’s native port of Redis
These 64-bit binary releases are created by building the Microsoft’s native port of redis which have also been published on NuGet, but as it’s more convenient we provide a zip of the 64-bit binaries here.
MS Open Announcements
- MSOpenTech Redis on Windows 3.0 Release Notes
- MSOpenTech Redis on Windows 2.8 Release Notes
- MSOpenTech’s Redis on Windows
- Updates Released for Redis on Windows (2.8.4)
Current Version: 3.0.503 (June 28, 2016)
- Download the redis-latest.zip native 64bit Windows port of redis
-
Extract
redis64-latest.zip
in any folder, e.g. inc:\redis
-
Run the
redis-server.exe
using the local configuration
$ cd c:\redis
$ redis-server.exe redis.windows.conf
- Run
redis-cli.exe
to connect to your redis instance
$ cd c:\redis
$ redis-cli.exe
- Start playing with redis
redis 127.0.0.1:6379> SET foo bar
OK
redis 127.0.0.1:6379> KEYS *
1) "foo"
redis 127.0.0.1:6379> GET foo
"bar"
redis 127.0.0.1:6379>
The MSOpenTech of Redis adds some useful extensions for better integration with Windows:
Running Redis as a Service
If you installed Redis using the MSI package, then Redis was already installed as a Windows service. Nothing further to do.
If you would like to change its settings, you can update the redis.windows-service.conf file and then restart the Redis
service (Run -> services.msc -> Redis -> Restart).
During installation of the MSI you can either use the installer’s user interface to update the port that Redis listens to and the firewall exception or run it silently without a UI. The following examples show how to install from the command line:
default install (port 6379 and firewall exception ON):
msiexec /i Redis-Windows-x64.msi
set port and turn OFF firewall exception:
msiexec /i Redis-Windows-x64.msi PORT=1234 ADD_FIREWALL_RULE=»»
set port and turn ON firewall exception:
msiexec /i Redis-Windows-x64.msi PORT=1234 ADD_FIREWALL_RULE =1
install with no user interface:
msiexec /quiet /i Redis-Windows-x64.msi
If you did not install Redis using the MSI package, then you still run Redis as a Windows service by following these instructions:
In order to better integrate with the Windows Services model, new command line arguments have been introduced to Redis.
These service arguments require an elevated user context in order to connect to the service control manager.
If these commands are invoked from a non-elevated context, Redis will attempt to create an elevated context in which to execute these commands.
This will cause a User Account Control dialog to be displayed by Windows and may require Administrative user credentials in order to proceed.
Installing the Service
--service-install
This must be the first argument on the redis-server command line. Arguments after this are passed in the order they occur to Redis when the service is launched.
The service will be configured as Autostart and will be launched as «NT AUTHORITY\NetworkService». Upon successful installation, a success message will be displayed and Redis will exit.
This command does not start the service.
For instance:
redis-server —service-install redis.windows.conf —loglevel verbose
Uninstalling the Service
--service-uninstall
This will remove the Redis service configuration information from the registry. Upon successful uninstallation, a success message will be displayed and Redis will exit.
This does command not to stop the service.
For instance:
redis-server —service-uninstall
Starting the Service
--service-start
This will start the Redis service. Upon successful startup, a success message will be displayed and Redis service will be started.
For instance:
redis-server —service-start
Stopping the Service
--service-stop
This will stop the Redis service. Upon successful termination, a success message will be displayed and Redis will exit.
For instance:
redis-server —service-stop
Naming the Service
--service-name name
This optional argument may be used with any of the preceding commands to set the name of the installed service. This argument should follow the service-install, service-start, service-stop or service-uninstall commands, and precede any arguments to be passed to Redis via the service-install command.
The following would install and start three separate instances of Redis as a service:
$ redis-server --service-install –service-name redisService1 –port 10001
$ redis-server --service-start –service-name redisService1
$ redis-server --service-install –service-name redisService2 –port 10002
$ redis-server --service-start –service-name redisService2
$ redis-server --service-install –service-name redisService3 –port 10003
$ redis-server --service-start –service-name redisService3
Redis Admin Desktop App
Redis Admin UI is a vuedesktop.com App that lets you manage your App’s configured Redis Server with a user-friendly UX for managing core Redis data types, simple search functionality to quickly find Redis values, quick navigation between related values, 1st class support for JSON values and a flexible CLI interface and command history to inspect all previously run redis commands for easy edits & reruns.
Video feature tour
Install
Launch as a stand-alone Desktop App by Installing .NET SDK and the
Windows Desktop App tool:
powershell iwr gist.cafe/install.ps1 -useb | iex
After install, open the Redis Admin Desktop from your browser at:
app://redis
Or from the command-line with:
Run headless on macOS, Linux and Windows
Non Windows OS can install the cross-platform x dotnet tool:
Then launch from Command Line with:
Where you can view it with your preferred browser at http://localhost:5000
Redis Vue
Redis Vue is a simple, lightweight, versatile Redis Admin UI developed using Vue and ServiceStack Sharp Apps. It supports Redis’s core Strings, Lists, Sets, Sorted Sets and Hash data structures and custom Redis commands with its entire functionality contained in a single /index.html using the dynamic #Script language, making it easy to customize and further enhance.
After app install, open the Redis Vue Desktop App from your browser at:
app://redis-vue
Or from the command-line with:
Run headless on macOS, Linux and Windows
Non Windows OS can install the cross-platform x dotnet tool then launch from Command Line with:
Where you can view it with your preferred browser at http://localhost:5000
Configure Redis Sentinel Servers
See the
redis config project for a quick way to setup up
the minimal
highly available Redis Sentinel configuration
including start/stop scripts for instantly running multiple redis instances on a single (or multiple)
Windows, OSX or Linux servers.