自己手动在虚拟机下装了下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. 再谈 最速下降法/梯度法/Steepest Descent

    转载请注明出处:http://www.codelast.com/ 最速下降法(又称梯度法,或Steepest Descent),是无约束最优化领域中最简单的算法,单独就这种算法来看,属于早就“过时”了 ...

  2. c++11 语言级线程

    c++11 语言级线程 线程的创建 用std::thread创建线程非常简单,只需要提供线程函数或函数对象即可,并且可以同时指定线程函数的参数. #define _CRT_SECURE_NO_WARN ...

  3. MT【156】特例$a_n=\dfrac{6}{\pi n^2}$

    设无穷非负数列$\{a_n\}$满足$a_n+a_{n+2}\ge2 a_{n+1},\sum\limits_{i=1}^{n}{a_i}\le1$,证明:$0\le a_n-a_{n+1}\le\d ...

  4. 《剑指offer》— JavaScript(20)包含min函数的栈

    包含min函数的栈 题目描述 定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数. 实现代码 var stack = []; function push(node) { stack. ...

  5. 哲学家问题(java)的三个解法

    //加synchronize进行同步 //释放资源又很快获得自身的资源,这样不妥,吃完的话休息100ms //每个人先申请编号小的筷子 public class Philosopher impleme ...

  6. JFreeChart工具类

    需要的jar包: jfreechart-1.0.17.jarjcommon-1.0.24.jar (jfreechart一般只要1.0系列的都可以,jcommon一般任何版本都可以) 效果: 代码: ...

  7. LigerUI下拉选择列表LigerComboBox中tree的节点初始化默认选中的问题

    问题描述 用后台的Json传送tree的数据 前端用js方法来控制选中节点 此方法存在bug 实例: bug问题:无论设置的默认选中值是多少个,前台checkbox最多只显示选中一个,但是内容框中显示 ...

  8. Linux运维七:网络基础

    1:网线 2:交换机,路由器 交换机(Switch)意为“开关”是一种用于电(光)信号转发的网络设备.它可以为接入交换机的任意两个网络节点提供独享的电信号通路.最常见的交换机是以太网交换机.其他常见的 ...

  9. java基础-BigInteger类常用方法介绍

    java基础-BigInteger类常用方法介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.BigInteger类概述 Java中long型为最大整数类型,对于超过long ...

  10. MongoDB 数据迁移和同步

    MongoDB 数据迁移和同步 MongoDB的数据同步 复制 mongodb的复制至少需要两个实例.其中一个是主节点master,负责处理客户端请求,其余的都是slave,负责从master上复制数 ...