Как мне настроить другой экземпляр Redis в Ubuntu?


8

Я в основном хочу иметь 2 экземпляра Redis на Ubuntu. Я посмотрел на скрипт /etc/init.d/redis-server и попытался создать новый (redis-server-dev), указывающий на другой файл конфигурации (новый порт и т. Д.), Но, похоже, он не работал.

Какова правильная процедура?

Спасибо


Я нашел этот файл debian.org/doc/debian-policy/ch-opersys.html#s-sysvinit, в котором объясняется, как работают эти сценарии, но я до сих пор не знаю, как создать новый экземпляр.
Дан

Ответы:


19
  • Создайте новый файл конфигурации /etc/redis/redis-new.conf(скопированный из redis.conf) и измените эти поля в новой конфигурации
    • PidFile
    • порт
    • лог-файл
    • dir (для базы данных по умолчанию)
  • Создайте новый файл /etc/init.d/redis-server-new(скопированный из файла redis-server) и измените эти поля в новом файле
    • имя
    • pidfile (такой же, как в файле конфигурации на шаге 1)
    • deamon_args (путь к файлу конфигурации на шаге 1).
  • Создайте нужный каталог mkdir /var/lib/redis-new (и дайте ему соответствующие права chown redis:redis /var/lib/redis-new)
  • Сделайте новый файл исполняемым: chmod +x /etc/init.d/redis-server-new
  • Зарегистрируйте нового демона: update-rc.d redis-server-new defaults

Я получаю эту ошибку: # update-rc.d redis-server-dev по умолчанию insserv: скрипт redis-server-dev: служба redis-server уже предоставлена! insserv: выход сейчас!
Бобби С

5

Добавляя к ответу Дэна ,

В соответствии с этой ошибкой в ​​файле журнала мы должны создать один дополнительный каталог

# Can't chdir to '/var/lib/redis-new': No such file or directory

так

mkdir /var/lib/redis-new

В противном случае /etc/init.d/redis-server-newне начнется.

Не забудьте добавить правильные права

chown redis:redis /var/lib/redis-new

0

Также есть другой способ, мы можем использовать скрипт установки, который находится по адресу https://github.com/antirez/redis/blob/3.0/utils/install_server.sh (поставляется с исходным кодом, если вы скомпилировали redis из исходного кода), Есть 2 файла шаблона:

  1. redis_init_script.tpl (находится в каталоге utils)
  2. redis.conf(находится в ../каталоге от утилит в источнике

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

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.