自己手动在虚拟机下装了下memcache,整个过程真是充满波折,本身用php5.3安装memcache扩展就麻烦很多,无法通过yum直接安装,安装方法详见http://chenwei.me/blog/server/69.html,接下来安装memcache服务,安装成功后,telnet可以成功,不过好像不是立即成功生效,过一会用stats才会有详细显示。

本机用

<?php

$mem = new Memcache;

$mem->connect(‘192.168.124.129′,11211) or die("连接失败");

$mem->getVersion();

?>

不管怎么调试始终都无法成功,后来用母机连接却连接成功了。

所以怀疑是服务器memcache扩展的问题,但是phpinfo()里面确实有了这个扩展,采用

ini_set(‘display_errors’, true);

error_reporting(E_ALL);

之后,可以显示详细错误。

"Memcache::get() [function.Memcache-get]: Server 127.0.0.1 (tcp 11211) failed with: Permission denied (13) in /var/www/.."

百度上找不到相关信息,不过google强大很多,得知这是selinuxd的问题,

selinux是一套linux的安全系统,它指定了应用程序可以访问的磁盘文件、网络端口等等。

如果装有selinux,那么默认的selinux会阻止memcache程序访问11211端口,所以必须对selinux进行配置才行。

方法1: 临时降低selinux运行级别,以便我们进行测试

命令:setenforce [Enforcing | Permissive]

Enforcing表示不允许违反策略的操作

Permissive表示允许违反策略的操作,但会记录下来

我们使用 setenforce Permissive

方法2: 修改selinux配置文件,关闭selinux

编辑 /etc/selinux/config 文件,将 SELINUX=enforcing 改为 SELINUX=disabled

方法3: 修改selinux的http策略,使得httpd进程可以访问网络,这样也就可以使用memcache了

命令:setsebool -P httpd_can_network_connect true

参数P的意思是保持设置的有效性,这样在重启之后这个设置依然有效,不会改变

我采用的是改/etc/selinux/config  SELINUX=0 重启后成功。

附:centos 安装memcache服务的方法

1.编译安装Libevent

cd ~

curl -O http://www.monkey.org/~provos/libevent-2.0.13-stable.tar.gz

tar -zxvf libevent-2.0.13-stable.tar.gz

cd libevent-2.0.13-stable-tar.gz

./configure –prefix=/usr

make && make install

检测一下查看是否安装:

ls -al /usr/lib | grep libevent

#显示

libevent.so -> libevent-2.0.so.5.1.2

2.安装Memcache

cd ~

curl -O http://www.danga.com/memcached/dist/memcached-1.4.0.tar.gz

tar -zxvf memcached-1.4.0.tar.gz

cd memcached-1.4.0.tar.gz

./configure –with-libevent=/usr/

make && make install

检测是否成功安装

ls -al /usr/local/bin/mem*

#显示

/usr/local/bin/memcached

开启Memcached守护进程

memcached -d -u root

完整命令

/usr/local/bin/memcached -d -m 200 -u root -c 256 -p 11211 -P /tmp/memcache.pid

#无提证明开启成功

#连接参数

-p 监听端口

-l 连接的IP地址,默认是本机

-d start启动memecache服务

-d restart重启

-d stop|shutdown关闭服务

-d install 安装

-d uninstall 卸载

-u 以身份运行仅在root下有效

-m 最大内存使用,单位MB,默认64MB,最大2G

-M 内存耗尽时返回错误

-c 最大同时连接数量,默认是1024

-f 块大小增长因为,默认是1.25

-n 最小分配空间,key+value+flags默认48

-h 显示帮助

#使用telnet连接

telnet localhost 11211

#直接按回车会出现客户端错误.

#查看当前状态命令

stats

stats参数参考

STAT pid 22459                             进程ID

STAT uptime 1027046                        服务器运行秒数

STAT time 1273043062                       服务器当前unix时间戳

STAT version 1.4.4                         服务器版本

STAT pointer_size 64                       操作系统字大小(这台服务器是64位的)

STAT rusage_user 0.040000                  进程累计用户时间

STAT rusage_system 0.260000                进程累计系统时间

STAT curr_connections 10                   当前打开连接数

STAT total_connections 82                  曾打开的连接总数

STAT connection_structures 13              服务器分配的连接结构数

STAT cmd_get 54                            执行get命令总数

STAT cmd_set 34                            执行set命令总数

STAT cmd_flush 3                           指向flush_all命令总数

STAT get_hits 9                            get命中次数

STAT get_misses 45                         get未命中次数

STAT delete_misses 5                       delete未命中次数

STAT delete_hits 1                         delete命中次数

STAT incr_misses 0                         incr未命中次数

STAT incr_hits 0                           incr命中次数

STAT decr_misses 0                         decr未命中次数

STAT decr_hits 0                           decr命中次数

STAT cas_misses 0                          cas未命中次数

STAT cas_hits 0                            cas命中次数

STAT cas_badval 0                          使用擦拭次数

STAT auth_cmds 0

STAT auth_errors 0

STAT bytes_read 15785                      读取字节总数

STAT bytes_written 15222                   写入字节总数

STAT limit_maxbytes 1048576                分配的内存数(字节)

STAT accepting_conns 1                     目前接受的链接数

STAT listen_disabled_num 0

STAT threads 4                             线程数

STAT conn_yields 0

STAT bytes 0                               存储item字节数

STAT curr_items 0                          item个数

STAT total_items 34                        item总数

STAT evictions 0                           为获取空间删除item的总数

centos 安装memcache服务后memcahce本机连接Permission的更多相关文章

  1. centos安装memcache与telnet

    ####################linux下安装memcache过程######################http://www.cnblogs.com/zgx/archive/2011/ ...

  2. Centos安装Memcache

    Memcache概述 官方 Memcache是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据.简单的说就是将数据调用到内存中,然后从内存 ...

  3. centos 安装git 服务端

    // 在服务端安装好git后,开始安装gitosis 3.在服务器安装gitosis sudo yum install python python-setuptools cd /usr/local/s ...

  4. Centos安装vncserver服务

    vnc是一款Windows远程桌面软件,其优点是支持跨操作系统的远程图形化控制.下面开始记录第一次安装vnc服务的过程. 1.先检查系统是否有安装VNC服务 [root@localhost ~]# [ ...

  5. centos安装openoffice服务

    第一步:yum install openoffice.org-brand openoffice.org-core openoffice.org-java-common xvfb openoffice. ...

  6. centos 安装sftp服务

    打开命令终端窗口,按以下步骤操作. 0.查看openssh的版本 ssh -V 使用ssh -V 命令来查看openssh的版本,版本必须大于4.8p1,低于的这个版本需要升级.  1.创建sftp组 ...

  7. CentOS 安装nginx服务

    安装nginx服务 sudo yum install nginx 启动nginx systemctl start nginx 加入启动项 systemctl enable nginx 测试nginx服 ...

  8. RedHat下安装Telnet服务端及客户端远程连接配置

    Telnet协议是TCP/IP协议族中的一员,是Internet远程登陆服务的标准协议和主要方式.它为用户提供了在本地计算机上完成远程主机工作的能力. 配置之前请确保网络连通,如防火墙影响连接,请先关 ...

  9. CentOS安装FTP服务

    最近公司有一个内部比赛(黑客马拉松),报名参加了这么一个赛事,在准备参赛作品的同时(参赛服务器需要自己搭建),借着这个机会,决定把tomcat部署相关的知识从0到1重新捋一遍.就当备忘录了. FTP服 ...

随机推荐

  1. shell的sed命令

    sed命令用于在线编辑文本,它一次处理一行内容. 命令语法: sed [-n/e/f/r/i] [cmd] [InFile] 参数解释: 选项与参数: -n: quiet/silent,安静模式,经过 ...

  2. 关于SDWebImage加载高清图片导致app崩溃的问题

    链接是对于SDWebImage的使用方法 http://www.cnblogs.com/JimmyBright/p/4457258.html 使用SDWebImage加载高清图片的时候,往往会报内存溢 ...

  3. 【scala】2.控制结构和函数

    简介 在Java或者C++中,我们把表达式和语句看做两种不同的东西.表达式有值,而语句执行动作. 在Scala中,几乎所有构造出来的语法结构都是有值的.这个特性使得程序更加的精简,也更易读. 1.条件 ...

  4. 洛谷 P1446 [HNOI2008]Cards 解题报告

    P1446 [HNOI2008]Cards 题目描述 小春现在很清闲,面对书桌上的\(N\)张牌,他决定给每张染色,目前小春只有\(3\)种颜色:红色,蓝色,绿色.他询问Sun有多少种染色方案,Sun ...

  5. 单点登录(十四)-----实战-----cas5.0.x登录mongodb验证方式常规的四种加密的思考和分析

    我们在上一篇文章中已经讲解了cas4.2.X登录启用mongodb验证方式 单点登录(十三)-----实战-----cas4.2.X登录启用mongodb验证方式完整流程 但是密码是明文存储的,也就是 ...

  6. fzyjojP2931 乱搞

    其实很简单(第二个不知是啥) 贡献独立 其实第一种就是考虑一个点在哈夫曼树上的期望深度是多少 因为精度要求较高 所以要高精小数加,高精小数除以低精整数

  7. Stamp Rally

    Stamp Rally 最大值最小,可以二分,然后并查集看能不能到z个点 但是询问过多,并且发现每次二分要加入的点并不是所有的m条边 于是就考虑整体二分 并查集的处理是重点: 对于一般的dfs分治树, ...

  8. pg中删除的页是否仍被访问

    昨天看到微信群中,有人提问:pg对于标记为删除的页,是否会扫描到? 今天做了一下测试,发现如果删除的是表的最后连续的几个页(根据ctid来确定数据插入先后,只讨论有insert的情况)中的数据,最后几 ...

  9. poj 3294 后缀数组 多字符串中不小于 k 个字符串中的最长子串

    Life Forms Time Limit: 5000MS   Memory Limit: 65536K Total Submissions: 16223   Accepted: 4763 Descr ...

  10. Python【经典类与新式类】

    经典类多继承的调用方法顺序是:深度优先查询,如下图:   新式类多继承的调用方法顺序是:广度优先查询,如下图:   可以使用下面的代码进行实验验证: #经典类class A: def __init__ ...