问题描述:
在外网部署了memcached,执行启动命令后,启动不成功。
./memcached -d -m 1024 -u root -l IP地址 -p 11211 -c 20480 -P /tmp/memcached11211.pid &
于是将memcached启动日志打印了出来,在原启动命令后加 -vv >> /tmp/memcached.log 2>&1
./memcached -d -m 1024 -u root -l IP地址 -p 11211 -c 20480 -P /tmp/memcached11211.pid -vv >> /tmp/memcached.log 2>&1
查看/tmp/memcached.log日志内容如下:
bind(): Cannot assign requested address
failed to listen on TCP port 11211: Cannot assign requested address
翻译过来是:
bind():无法分配请求的地址
无法侦听TCP端口11211:无法分配请求的地址
问题分析:
这就很奇怪了,11211端口也没有被占用,为啥无法分配地址呢。
于是,于是想到。。。。这个是外网服务器,做作了转发的,我命令里面的ip地址并不是这台服务器真实的IP地址。
查看本机IP地址后,果然不一样。
hostname -i
解决方案:
于是,将memcached启动命令中的IP地址替换为实际IP地址,启动成功。