首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >phpredis:错误:未知命令

phpredis:错误:未知命令
EN

Stack Overflow用户
提问于 2020-08-20 09:51:03
回答 1查看 590关注 0票数 0

我通过pecl将phpredis安装到了我的docker容器(使用PHP-7.4.1-apache运行):

代码语言:javascript
复制
RUN pecl install -f redis-5.3.1 && docker-php-ext-enable redis

我连接到redis服务器,但是对于我获得的所有命令:错误:未知命令

代码语言:javascript
复制
$redis->select(1);

$redis->getLastError();

$redis->set('test', 'test');

$redis->getLastError();

$redis->get('test');

$redis->getLastError();

,其中getLastError()返回:

‘'ERR未知命令’选择‘�’

‘'ERR未知命令'SET'�’

‘'ERR未知命令'GET'�’

看起来错误消息包含了一些错误编码的字符,这可能是问题的原因。

我已经尝试过安装不同的版本: 5.3.1和5.2.0,但是结果是一样的。

EN

回答 1

Stack Overflow用户

发布于 2020-08-21 08:31:20

已解决:

我们的红星正处于哨兵状态:

代码语言:javascript
复制
$redis->info();
//"redis_mode": "sentinel",

这意味着,首先我需要与RedisSentinel连接,然后获得主地址,然后按如下方式连接到该主服务器:

代码语言:javascript
复制
// connect to sentinel
$sentinel = new RedisSentinel('ip', 'port', 10);

// get the master ip and port you want to use
$address = $sentinel->getMasterAddrByName('your-master-name');

$redis = new Redis();
// connect to that master
$redis->pconnect($address[0], $address[1], 10);

// select the db
$redis->select(1);

// ready
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63502536

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档