How to connect to remote Redis server?

Redis

Redis Problem Overview


I have URL and PORT of remote Redis server. I am able to write into Redis from Scala. However I want to connect to remote Redis via terminal using redis-server or something similar in order to make several call of hget, get, etc. (I can do it with my locally installed Redis without any problem).

Redis Solutions


Solution 1 - Redis

redis-cli -h XXX.XXX.XXX.XXX -p YYYY

xxx.xxx.xxx.xxx is the IP address and yyyy is the port

EXAMPLE from my dev environment

redis-cli -h 10.144.62.3 -p 30000

REDIS CLI COMMANDS

> Host, port, password and database By default redis-cli connects to the > server at 127.0.0.1 port 6379. As you can guess, you can easily change > this using command line options. To specify a different host name or > an IP address, use -h. In order to set a different port, use -p. > > redis-cli -h redis15.localnet.org -p 6390 ping

Solution 2 - Redis

In Case of password also we need to pass one more parameter

redis-cli -h host -p port -a password

Solution 3 - Redis

There are two ways to connect remote redis server using redis-cli:

  1. Using host & port individually as options in command

redis-cli -h host -p port

If your instance is password protected

redis-cli -h host -p port -a password

e.g. if my-web.cache.amazonaws.com is the host url and 6379 is the port

Then this will be the command:

redis-cli -h my-web.cache.amazonaws.com -p 6379

if 92.101.91.8 is the host IP address and 6379 is the port:

redis-cli -h 92.101.91.8 -p 6379

command if the instance is protected with password pass123:

redis-cli -h my-web.cache.amazonaws.com -p 6379 -a pass123

2. Using single uri option in command

redis-cli -u redis://password@host:port

command in a single uri form with username & password

redis-cli -u redis://username:password@host:port

e.g. for the same above host - port configuration command would be

redis-cli -u redis://pass[email protected]:6379

command if username is also provided user123

redis-cli -u redis://user123:[email protected]:6379

This detailed answer was for those who wants to check all options. For more information check documentation: Redis command line usage

Solution 4 - Redis

One thing that confused me a little bit with this command is that if redis-cli fails to connect using the passed connection string it will still put you in the redis-cli shell, i.e:

redis-cli
Could not connect to Redis at 127.0.0.1:6379: Connection refused
not connected> 

You'll then need to exit to get yourself out of the shell. I wasn't paying much attention here and kept passing in new redis-cli commands wondering why the command wasn't using my passed connection string.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionduckertitoView Question on Stackoverflow
Solution 1 - Redisgh9View Answer on Stackoverflow
Solution 2 - RedisAakash HandaView Answer on Stackoverflow
Solution 3 - RedisOM BharatiyaView Answer on Stackoverflow
Solution 4 - RedisrattybagView Answer on Stackoverflow