Install Redis & Redis-Server in Ubuntu 14.10/14.04/13.10
What is Redis?
Redis is a flexible, open-source, key value data store. It’s other NoSQL databases, such as Cassandra and MongoDB. Redis allows the user to store vast amounts of data without the limits of a relational database.It is written in ANSI C. It is often referred to as a data structure server since keys can contain strings, hashes, lists, sets and sorted sets.
Redis consists of two key parts, first being the server it self and second PhpRedis extension that allows PHP to communicate with Redis.
Redis can be install using ubuntu repository “apt” and from source. We will cover both type of installation here.
Redis Install by “apt” Repository –
Follow these blow steps to install Redis & Redis-Server in Ubuntu using apt repository which will automatically install and setup redis on server which is very fast and easy to setup.
Step 1. Create a new file in the apt source /etc/apt/sources.list.d/
sudo vi /etc/apt/sources.list.d/dotdeb.org.list
And write the following code in it.
# /etc/apt/sources.list.d/dotdeb.org.list deb http://packages.dotdeb.org squeeze all deb-src http://packages.dotdeb.org squeeze all
This repo will use to get the latest redis for ubuntu.Then you need to authenticate these repositories using their public key by running rhe following command.
sudo wget -q -O - http://www.dotdeb.org/dotdeb.gpg | sudo apt-key add -
Step 2. Now update APT cache and install Redis by running the following commands.
sudo apt-get update sudo apt-get -y install redis-server
Redis install using Source
There is another way of installation of redis using source which is also suggested by redis community as redis has no dependency other than gcc compiler so it’s the best way to compile redis from source. As installation using package manager may sometime not installing latest version of redis in server.
First we have to download and install a compiler with build essential and tcl which is cross-platform interpreted scripting language. This will help us install Redis from source:
sudo apt-get install build-essential tcl8.5
Next step is to download latest stable version of redis tarball file http://download.redis.io/redis-stable.tar.gz.
wget http://download.redis.io/redis-stable.tar.gz tar xvzf redis-stable.tar.gz cd redis-stable
Proceed to with the make command:
You can try if your build works correctly by typing make test, this is an optional step
Finish up by running make install, which installs the program system-wide.
sudo make install
Once the program has been installed, Redis comes with a built in script that sets up Redis to run as a background daemon.
To access the script move into the utils directory:
From there, run the Ubuntu/Debian install script:
You can press enter to make it default setup or can change any path which you want.
By default this will install redis with redis_6379 setup which you can also change while executing above script.
Redis Server can start and stop with these commands (the number depends on the port you set during the installation. 6379 is the default port setting):
sudo service redis_6379 start sudo service redis_6379 stop
Check if Redis is working
External programs talk to Redis using a TCP socket and a Redis specific protocol. Redis provide a command line utility which used to send command to redis on backend. This program is implemented in different language. This program is called redis-cli.
The first thing to do in order to check if Redis is working properly is sending a PING command using redis-cli:
$ redis-cli ping PONG
If you get PONG in return that means redis server is working fine on server.
Another way to run redis-cli is without arguments: the program will start in interactive mode, where you can type different commands and see their replies.
$ redis-cli redis 127.0.0.1:6379> ping PONG
To set Redis to automatically start at boot, run:
sudo update-rc.d redis_6379 defaults
Install Redis as PHP Extension
Redis provide php extension to work with php. Here we will cover installation of Redis Extension of php from source compilation and using apt repository.
Following command will install and setup redis extension with php.
sudo apt-get -y install php5-redis
Install Redis extension of PHP using Source
First we need to install “php5-dev” which provides the dev library as well as the phpize command which is required for the compiling Source code.
sudo apt-get -y install php5-dev
Next we will download phpredis from git repository. Install Git if you don’t have using following command.
sudo apt-get -y install git
git clone git://github.com/nicolasff/phpredis.git
Compile and install phpRedis by running the following commands.
cd phpredis phpize ./configure make sudo -s make install
Next we need to add extension with php configuration so that php can enable this module using following command. This step need root access for updating php extension file.
sudo -s echo "extension=redis.so">/etc/php5/conf.d/redis.ini exit
To check Redis is working with php we make a simple php file as follow and run it.
And wirte the following code in the phpredis.php file.
<?php $redis=new Redis() or die("Can not load Redis."); $redis->connect('127.0.0.1'); $redis->set('Redis test_key', 1);
Now, run the phpredis.php file either using your browser or command line i am here to chose command line option as.
If this file runs without any error then check cache with redis using following command.
redis-cli redis 127.0.0.1:6379>keys * 1) "Redis test_key redis 127.0.0.1:6379
if the above result found that means Redis is working perfectly. If not that means you have missed some steps from above.