mysql5.6开启memcache_php – 使用MYsql 5.6 Memcache

作者尝试在MySQL 5.6中利用memcache插件查询数据,遇到问题在于如何在键值中正确指定表名。他们希望通过$key获取codes表的数据,但未收到预期结果。寻求如何在PHP代码中明确指定目标表名以解决此问题。
摘要由CSDN通过智能技术生成

我想我必须遗漏一些非常明显的东西,但我想要做的是使用

MySQL 5.6并通过memcache返回值

所以我设置了MYSQL来使用memcache插件,在innodb_memcache.containers表中设置细节

我现在在该表中有两个项目,MySQL输入的默认项目和我自己的设置,它们都有表名.

要通过php获取数据,我使用:

$memcache->get($key);

其中$key是db列中的数据

然而,这没有任何回报,我怀疑原因是,根据MySQL Docs,如果没有指定表名,它选择列表中的第一个,这不是我想要的那个,我不明白的是我怎么样在密钥中指定正确的表名,因此它知道要在哪个表中查找密钥.

附加信息:

table design:

table: codes

id INT PK

code VARCHAR UNIQUE

codeval VARCHAR

innodb_memcache.containers :

name: mycode

db_schema: databaseName

db_table: codes

key_columns: code

value_columns: codeval

flags: id

cas_column: null

expire_time_column: null

unique_idx_name_on_key: code

码:

$table = "mycode";

$key = "123456";

$memcache = new Memcache;

$memcache->connect($this->CONNECTURL, $this->CONNECTPORT) or die ("Could not connect");

$version = $memcache->getVersion();

echo "Server's version: ".$version."
\n";

$key = "@@" . $table . "." . $key . "." . $table;

$get_result = $memcache->get($key);

print_r($get_result);

上面的代码返回服务器版本没有问题,因此连接正常.

print_r($get_result)返回空白,应该返回一个值

它确实发出通知:试图获得非对象的属性

所以,如果有人能让我知道我如何用$key指定我用来通过memcache查询哪个表,我将不胜感激!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值