![尝试使用 Memcache 时出现连接错误](https://linux22.com/image/572762/%E5%B0%9D%E8%AF%95%E4%BD%BF%E7%94%A8%20Memcache%20%E6%97%B6%E5%87%BA%E7%8E%B0%E8%BF%9E%E6%8E%A5%E9%94%99%E8%AF%AF.png)
我是“Memcache”的新手,但我已经安装了它并且我认为它正在运行,到目前为止我是否正确完成了以下操作?
mkdir memcache
wget http://pecl.php.net/get/memcache-3.0.6.tgz
tar -xvfz memcache-3.0.6.tgz
cd memcache-3.0.6
phpize
./configure
make
make install
echo "extension=memcache.so" >> /usr/local/lib/php.ini
service httpd restart
但是当我尝试使用以下方式连接时:
$memcache = new Memcache;
$memcache->connect('localhost', 11211) or die ("Could not connect");
我可获得:Memcache::connect() [memcache.connect]: Can't connect to localhost:11211, Connection refused (111)
我见过有人说尝试使用 telnet telnet localhost 11211
,但如果我尝试,我会得到连接被拒绝
我尝试用 127.0.0.1 替换 localhost,但也没有成功。
我是否安装了错误的 memcache?如果是,我该如何删除刚刚添加的那个?还是我需要 libevent?
答案1
我现在把这个问题放到答案里,因为我觉得我知道你的问题了。你只安装了 memcached 的 PECL 模块,它本质上是一个客户端库,而不是实际的 memcache 服务器。你需要从这里下载并安装最新的 memcached 守护进程:
安装完成后,您将能够启动守护程序并连接到端口 11211。另外,根据您运行的发行版,您的存储库中可能有一个可用的 memcached 包。我强烈建议您安装此包,而不是自行开发 memcached,因为它将大大简化升级和管理 memcached。