我正在连接到Redis实验室,以便在我们的应用程序中使用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,但是如果这样做,如何使用所选的数据库?
不知道该怎么做。
发布于 2018-02-12 16:44:55
host参数用于实例端点:

RedisLabs每个实例只允许一个数据库,因此在database参数中使用0没有问题:
这正是我们每个Redis实例只允许使用一个数据库(默认的0编号数据库)的原因。这确保了我们服务中的任何两个数据库都不会在单个线程的资源上竞争。实际上,尝试在我们的服务中使用除0以外的任何数据库都会产生错误.。
https://stackoverflow.com/questions/48751000
复制相似问题