Обновление redis из исходников



Дома Ubuntu 10.04.1 LTS (серверная), на работе тоже, но десктопная версия.

Надо было мне поставить redis. Если вы еще не знаете что это, советую почитать что это, вкратце – это точка сбора NoSql движения.

В общем-то я поставил redis из репозитория, но при работе с HASH ключами через php клиент rediska возникали проблемы типа неизвестных redis’у операций HSET и пр. Я естественно в разволновался – т.к. наврядли в редиске стали бы реализовывать то, чего нет во второй версии редиса, которая «типа» поставилась из репозитория.  Решил проблему пересборкой redis из исходных файлов:

Обратите внимание redis уже был установлен из репозитория до обновления!

  1. Качаем свежак отсюда [ссылка] (Сейчас последний релиз Redis 2.0.4 stable далее буду относительно него рассказывать)
  2. Качаем redis-2.0.4.tar.gz в /tmp
    1
    2
    $ cd /tmp
    $ wget http://redis.googlecode.com/files/redis-2.0.4.tar.gz
  3. Распаковываем скачанный файл. Как это сделать можно посмотреть тут
    1
    2
    3
    $ gunzip redis-2.0.4.tar.gz
    $ tar -xvf redis-2.0.4.tar
    $ cd redis-2.0.4
  4. После компилируем исходные файлы.
    Для этого у вас должен быть установлен gcc, если его нет:

    1
    $ sudo aptitude install gcc

    Потом

    1
    $ sudo make
  5. Потом даем себе рута отстанавливаем redis-server, если он работает и переносим новые файлы в рабочую директорию /usr/bin
    1
    2
    3
    4
    5
    6
    7
    $ sudo su
    $ /etc/init.d/redis-server stop
    $ cp redis-benchmark /usr/bin/redis-benchmark
    $ cp redis-check-aof /usr/bin/redis-check-aof
    $ cp redis-check-dump /usr/bin/redis-check-dump
    $ cp redis-cli /usr/bin/redis-cli
    $ cp redis-server /usr/bin/redis-server
  6. Стартуем редис сервер и радуемся
    1
    $ sudo /etc/init.d/redis-server start

К сожалению похожих по тематике статей пока нет.

  1. Добрый день! Спасибо за статью, очень полезная. Вот есть один вопрос: как у Вас так получилось, что Redis попал в автозагрузку /etc/init.d/redis-server? После сборки из исходников у меня нет такого скрипта (((

  2. Попробуйте make install, но правда не ручаюсь что создаст все, что нужно. Наголо не ставил, сначала из репозитория redis был установлен, а потом поверх копировал нужные файлы. Так что если make install не прокатит качайте из репозитория, а потом обновляйте.

Ответить


[ Ctrl + Enter ]