Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Redis install on CentOS 6.4
BTW yum has last Redis too, remi repository at least.
$ sudo -i
$ yum list redis
$ redis.x86_64 2.6.13-1.el6.remi remi
But today we want compile redis from source (see http://redis.io/download)
$ yum install make gcc tcl
$ cd /usr/local/src
$ wget http://redis.googlecode.com/files/redis-2.6.13.tar.gz
$ tar xzf redis-2.6.13.tar.gz
$ cd redis-2.6.13
$ make
$ make test
$ make install
$ which redis-server
/usr/bin/which: no redis-server in (/usr/local/sbin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin)
Now we add /usr/local/bin to PATH, thanks to http://serverfault.com/questions/102932/adding-a-directory-to-path-in-centos :)
$ echo 'pathmunge /usr/local/bin' > /etc/profile.d/custom_path.sh
$ chmod +x /etc/profile.d/custom_path.sh
Add sane configuration into redis, thanks to https://gist.github.com/paulrosania/257849 and http://www.ebrueggeman.com/blog/install-redis-centos-56 :)
$ mkdir /etc/redis /var/lib/redis
$ sed -e "s/^daemonize no$/daemonize yes/" -e "s/^dir \.\//dir \/var\/lib\/redis\//" -e "s/^loglevel debug$/loglevel notice/" -e "s/^logfile stdout$/logfile \/var\/log\/redis.log/" redis.conf > /etc/redis/redis.conf
$ wget https://raw.github.com/gist/257849/9f1e627e0b7dbe68882fa2b7bdb1b2b263522004/redis-server
$ sed -i "s/usr\/local\/sbin\/redis/usr\/local\/bin\/redis/" redis-server
$ chmod u+x redis-server
$ mv redis-server /etc/init.d
$ /sbin/chkconfig --add redis-server
$ /sbin/chkconfig --level 345 redis-server on
$ /sbin/service redis-server start
Starting redis-server: [ OK ]
$ service redis-server status
redis-server (pid NNNN) is running...
Let's test it:
$ redis-cli
OR
$ telnet 127.0.0.1 6379
$ set attitude:today "happy"
$ get attitude:today
And happy day to you too ;)
@PerfectedApp

This comment has been minimized.

@vshank77

This comment has been minimized.

@jeiman-zz

This comment has been minimized.

@hamsterready

This comment has been minimized.

Copy link

hamsterready commented Feb 17, 2014

Nice stuff, all works as expected!

@cslagel

This comment has been minimized.

Copy link

cslagel commented Mar 5, 2014

The line "sed -e "s/^daemonize no$/daemonize yes/" -e "s/^dir .//dir /var/lib/redis//" -e "s/^loglevel debug$/loglevel notice/" -e "s/^logfile stdout$/logfile /var/log/redis.log/" redis.conf > /etc/redis/redis.conf" doesn't seem to be working for me... after running the redis.conf is still empty...

@j0sephgimenez

This comment has been minimized.

Copy link

j0sephgimenez commented Mar 14, 2014

cslagel - you have to run the sed command from within the folder where redis was extracted from the *.tar.gz from the redis.io download site. This folder should have a redis.conf file already, just with default values that we need to change. The sed command will update the necessary values and save those changes to a new redis.conf file under /etc/redis

Also, it looks like for 2.8.7, the sed command should be something similar to (as logfile has default value "" instead of stdout):

sed -e "s/^daemonize no$/daemonize yes/" -e "s/^dir .//dir /var/lib/redis//" -e "s/^loglevel debug$/loglevel notice/" -e "s/^logfile ""$/logfile /var/log/redis.log/" redis.conf > /etc/redis/redis.conf

At least that seems to work for me at first glance.

@cslagel

This comment has been minimized.

Copy link

cslagel commented May 21, 2014

I noticed in the beginning we're installing to '/usr/local/src':
$ yum install make gcc tcl
$ cd /usr/local/src
$ wget http://redis.googlecode.com/files/redis-2.6.13.tar.gz
$ tar xzf redis-2.6.13.tar.gz
$ cd redis-2.6.13
$ make
$ make test
$ make install

which results in:

[root@LUredis1 src]# locate redis-server
/usr/local/src/redis-2.8.9/src/redis-server

and for the rest of the tutorial we're referencing '/usr/local/bin' as the location for redis-server?

I changed all the references in the init.d script to reflect, but the tutorial should be updated to have the correct paths or instruct moving the redis location.

@eduFLOSS

This comment has been minimized.

Copy link

eduFLOSS commented Aug 21, 2014

Don't you think that it is too complex to install redis that way? When I use pip install redis I get the version of 2.10.0, but I I find the stable version is 2.8.13 using this way.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.