PHP Redis无效的数据库索引

时间:2018-02-12 16:23:37

标签: php redis predis phpredis

我正在连接Redis Labs,以便将redis用于我们的应用程序。

以下是我的配置:

$conf=[
 'scheme'=>'tcp',
 'host'=>'ec2.cloud.redislabs.com',
 'port'=>12860,
 'database'=>'selector',
 'password'=>'redispassword'
];

然后我这样做加载predis库:

require "lib/predis/autoload.php";

之后我这样做:

$client = new Predis\Client($conf);

然后我尝试运行一个命令:

$client->hset('comments',"comment:1","{json_encoded_data}");

这是我收到的错误:

PHP Fatal error:  Uncaught exception 'Predis\Connection\ConnectionException' with message '`SELECT` failed: ERR invalid DB index [tcp://cloud.redislabs.com:12860]' in /redis/lib/predis/src/Connection/AbstractConnection.php:155

我已经在线查看,人们说我应该将数据库设置为0但是如果我这样做,我该如何使用我选择的数据库?

不知道该怎么做。

1 个答案:

答案 0 :(得分:1)

0参数适用于您的实例端点:

enter image description here

RedisLabs每个实例只允许一个数据库,因此您在database参数中使用{{1}}时没有问题:

  

这正是我们每个Redis Cloud实例的原因   允许只使用一个数据库(默认的0编号数据库)。   这可确保我们服务中的任何两个数据库永远不会竞争   关于单个线程的资源。 事实上,试图使用任何   使用我们的服务而不是0的数据库应该会产生错误。

Source