【发布时间】:2017-04-02 09:50:19
【问题描述】:
我有远程 Redis 服务器的 URL 和端口。我可以从 Scala 写入 Redis。但是,我想通过终端使用redis-server 或类似的东西连接到远程Redis,以便多次调用hget、get 等(我可以使用本地安装的Redis 来完成,没有任何问题)。
【问题讨论】:
标签: redis
我有远程 Redis 服务器的 URL 和端口。我可以从 Scala 写入 Redis。但是,我想通过终端使用redis-server 或类似的东西连接到远程Redis,以便多次调用hget、get 等(我可以使用本地安装的Redis 来完成,没有任何问题)。
【问题讨论】:
标签: redis
redis-cli -h XXX.XXX.XXX.XXX -p YYYY
xxx.xxx.xxx.xxx 是 IP 地址,yyyy 是端口
我的开发环境中的示例
redis-cli -h 10.144.62.3 -p 30000
主机、端口、密码和数据库 默认情况下 redis-cli 连接到 服务器位于 127.0.0.1 端口 6379。您可以猜到,您可以轻松更改 这使用命令行选项。指定不同的主机名或 IP 地址,使用 -h。要设置不同的端口,请使用 -p。
redis-cli -h redis15.localnet.org -p 6390 ping
【讨论】:
Could not connect to Redis at -c:6379: Temporary failure in name resolution
redis-cli -u redis://user:pass@host:port..
docker run -it --rm bitnami/redis:latest redis-cli -h host.docker.internal -p 6379 应该可以工作
如果是密码,我们还需要再传递一个参数
redis-cli -h host -p port -a password
【讨论】:
redis-cli -h host -p port 然后进行身份验证。 host:6379> AUTH abcdefg
使用redis-cli连接远程redis服务器有两种方式:
redis-cli -h host -p port
如果您的实例受密码保护
redis-cli -h host -p port -a password
例如如果my-web.cache.amazonaws.com 是主机地址,6379 是端口
那么这将是命令:
redis-cli -h my-web.cache.amazonaws.com -p 6379
如果92.101.91.8是主机IP地址,6379是端口:
redis-cli -h 92.101.91.8 -p 6379
如果实例使用密码pass123 保护,则命令:
redis-cli -h my-web.cache.amazonaws.com -p 6379 -a pass123
uri 选项redis-cli -u redis://password@host:port
带有用户名和密码的单个uri 表单中的命令
redis-cli -u redis://username:password@host:port
例如对于相同的上述主机 - 端口配置命令将是
redis-cli -u redis://pass123@my-web.cache.amazonaws.com:6379
如果还提供用户名,则命令user123
redis-cli -u redis://user123:pass123@my-web.cache.amazonaws.com:6379
这个详细的答案是为那些想要检查所有选项的人准备的。 更多信息查看文档:Redis command line usage
【讨论】:
redis-cli -u rediss://default:passwd@example-redis.aivencloud.com:25945 时,它会抛出Invalid URI scheme 错误。
redis-cli 不支持 TLS 连接,因此您需要使用支持 rediss 协议的其他工具才能使用 URI 进行连接。我建议使用redli(github.com/IBM-Cloud/redli) 和这个命令来连接:redli --tls -u rediss://default:passwd@example-redis.aivencloud.com:25945。但如果你一定要使用redis-cli,那么你将需要为此做额外的配置。检查:redis.io/topics/encryption
这个命令让我有点困惑的是,如果redis-cli 无法使用传递的连接字符串进行连接,它仍会将您置于redis-cli shell 中,即:
redis-cli
Could not connect to Redis at 127.0.0.1:6379: Connection refused
not connected>
然后您需要exit 才能让自己摆脱困境。我在这里没太注意,一直在传递新的redis-cli 命令,想知道为什么该命令没有使用我传递的连接字符串。
【讨论】: