Redis is an open source in-memory data structure store that is mainly used as a caching server but can also be used as a database or as a message broker. We have already discussed about the Redis server & its installation as well as setting up Master Slave setup for Redis server in our previous tutorials.

Recommended Read : A Gitlab tutorial — Things to do after installation

Also Read: Create a free Apache SSL certificate with Let’s Encrypt on CentOS & RHEL

In this tutorial, we will learn about some of the redis cli commands, mostly used by SysAdmins for managing or monitoring redis servers. But first let’s start with the installation of redis cli utility.

Redis CLI installation

When we install Redis server, redis cli utility is installed along with it. But we don’t need install Redis server on all the system that will be connecting to another redis server, we can just install redis-cli only.

Let’ s start with the installation on CentOS/RHEL systems first,

CentOS/RHEL/Fedora

First install system dependencies,

# yum install wget gcc make -y

Now download & extract the redis source packages,

# wget http://download.redis.io/redis-stable.tar.gz

# tar -xvzf redis-stable.tar.gz

Now we will make redis dependencies & compile it,

# cd redis-stable/deps

# make hiredis jemalloc linenoise lua geohash-int

# cd ..

# make

& laslty will copy the redis-cli file to /usr/bin to make it accessible system wide,

# cp src/redis-cli /usr/bin

Ubuntu

Installation of redis cli is pretty simple on Ubuntu. We just need to install package named ‘redis-tools’ ,

$ sudo apt-get install redis-tools

NOTE:- If you don’t have redis cli installed on the system, you can also use telnet to connect to the redis server,

$ telnet REDIS_SERVER_IP REDIS_PORT

$ telnet 192.168.1.1 6379

We will now discuss some of the useful redis cli commands.

 

Redis CLI Commands

1- Connecting to a local redis instance

If we are connecting to redis-instance on local server, we can run the following command,

$ redis-cli

Or if we have multiple instance of redis server on same machine, than we can also define the port number to connect,

$ redis-cli -p 6379

 

2- Connecting to remote redis instance

To connect to redis instance that is on a remote server, run the following command,

$ redis-cli -h 192.168.1.1 -p 6379

Note:- Once connected we will not be prompted for password, we need to execute command ‘AUTH’ followed by password.

We can also mention the password with same command so that we dont have to enter it,

$ redis-cli -h 192.168.1.1 -p 6379 -a MYPASSWORD

 

3- Check if a redis instance is up or not

To check whether a redis instance is up or not, we can execute the following command,

$ redis-cli -h 192.168.1.1 -p 6379 ping

& we should get the output as ‘PONG’ in reply. We can also set up continous PING response monitoring by mentioning a time interval with option ‘i’ in above mentioned command,

$ redis-cli -h 192.168.1.1 -p 6379 ping -i 2

here, 2 is delay in seconds.

 

4- Checking some basic server stats

To the check some stats of the redis server instace, we will use option ‘--stat’,

$ redis-cli -h 192.168.1.1 -p 6379 –stat

This redis cli command provides the following information,

- total number of keys on the server,

- total number of clients connected to server,

- currentl total number of connections,

- memory usage

- Number of requests served by the server.

 

5- Detailed server statistics & information

To check the detailed server statistics & information, we will use the command ‘INFO’. Connect to redis server instance,

$ redis-cli -h 192.168.1.1 -p 6379

& than type the following command,

redis> INFO

It provides the following information,

server: General information about the Redis server

clients: Client connections section

memory: Memory consumption related information

persistence: RDB and AOF related information

stats: General statistics

replication: Master/slave replication information

cpu: CPU consumption statistics

commandstats: Redis command statistics

cluster: Redis Cluster section

keyspace: Database related statistics

 

6- Monitor all the commands executed on redis

To check what and all commands are running on the redis-instance, we can use command monitor,

$ redis-cli monitor

 

7- Create a backup of redis instance

To create backup of the redis instance, connect to the redis server instance,

$ redis-cli -h 192.168.1.1 -p 6379 -a PASSWORD

& than run the command “SAVE” to create a backup,

redis> SAVE

This will create a file named ‘dump.rdb' into the current redis instance directory.

Note:- There is another command called ‘BGSAVE’ that we can use to take backup. Only difference is that BGSAVE takes the backup while running is background.

 

8 - Restore a backup

To restore a backup, we only need to copy the file ‘dump.rdb’ into the redis installation directory & need to restart the redis service.

 

9- Create a Keys

To create a new key, connect to the redis instance & than run the following command,

redis> SET test-key-1redis> redis-cli --scan--pattern ‘test*’

here, test-key-1 is the name of the key.

 

10- Delete a key

To delete a key, connect to the redis instance & than run DEL command followed by the name of the key,

redis> DEL test-key-1

 

11- Delete all keys

To delete all the keys from the redis server, we can use the command ‘flushall’,

$ redis-cli flushall

 

12- List all keyshttps://redis.io/commands

To list all keys, connect to redis instance & than run

redis> redis-cli --scan

This will produce list of all the keys, to search for a particular pattern, run

redis> redis-cli --scan--pattern ‘test*’

These were some of the redis cli commands that we normally use, for the complete list of the redis cli commands & their detailed usage, you should refer HERE. This is it for this tutorial, please do leave your suggestions or queries in the comment box below.

If you think we have helped you or just want to support us, please consider these :-

Connect to us: Facebook | Twitter | Google Plus

Donate us some of your hard earned money: [paypal-donation]

Linux TechLab is thankful for your continued support.