centos 安装memcache服务后memcahce本机连接Permission

自己手动在虚拟机下装了下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的总数

时间: 2024-10-09 21:12:13

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

Centos安装nginx服务

到http://nginx.org/en/download.html下载最新版本的Nginx并安装. 一 下载并安装pcre库ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/ tar zxvf pcre-8.30.tar.gz ./configure     make    make install 二 安装openssl yum -y install openssl openssl-devel 三 下载tcp_proxy_module

centos 安装memcache

1.由于memcached是基于libevent的,因此需要安装libevent,libevent-devel 方法一:# yum install libevent libevent-devel -y(一键安装的形式) 方法二:1>  tar zxvf libevent-2.0.17-stable.tar.gz    2>./configure --prefix=/usr/local/memcache && make && make install 2.下载并解

CentOS安装ISCSI服务和运行

一:安装服务器: [[email protected] CD]# rpm -ivh scsi-target-utils-1.0.24-10.el6.x86_64.rpm warning: scsi-target-utils-1.0.24-10.el6.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY error: Failed dependencies: libibverbs.so.1()(64bit) is nee

centos 安装nvidia驱动后 开机画面蓝白条

centos 安装nvidia驱动后 开机画面蓝白条 安装驱动后 出现蓝白条 网上说 grub之后 按e 选中kenel 然后再按e 然后加入 vga=ask 然后按b启动 出现后 选择自己的分辨率 centos 安装nvidia驱动后 开机画面蓝白条

centos安装memcache与telnet

####################linux下安装memcache过程######################http://www.cnblogs.com/zgx/archive/2011/08/10/2134097.htmllinux 下安装memcahe过程:1.下载memcache文件:memcache官网:http://memcached.org/downloadswget http://memcached.org/files/memcached-1.4.22.tar.gz若果

Centos安装vncserver服务

vnc是一款Windows远程桌面软件,其优点是支持跨操作系统的远程图形化控制.下面开始记录第一次安装vnc服务的过程. 1.先检查系统是否有安装VNC服务 [[email protected] ~]# [[email protected] ~]# rpm -qa | grep tigervnc 2.安装vnc服务 [[email protected] ~]# yum -y install tigervnc-server  //yum安装减少了很多不必要的麻烦 3.启动并设置密码 在第一次启动v

centos安装openoffice服务

第一步:yum install openoffice.org-brand openoffice.org-core openoffice.org-java-common xvfb openoffice.org-writer openoffice.org-calc openoffice.org-l10n-zh-cn openoffice.org-l10n-zh-tw python-uno openoffice.org-draw openoffice.org-impress 第二步:启动命令:/usr

CentOS安装Samba服务

1.在线安装samba服务 # yum install samba samba-client samba-swat 2.备份samba 主配置文件,文件目录 /etc/samba/samba.conf # cp smb.conf smb.conf.backup 3.修改samba.conf配置文件 修改之后如下:其他没有显示的代码全部关掉 [global] netbios name = MDITIP_SERVER \\网络显示服务器名称 server string = Samba Server

Linux centos 安装VNC 服务过程

安装vncserver,使用yum install vnc-server无法安装,正确的方法是使用#yum install tigervnc-server才可以正常安装. 安装成功vnc-server后,需要进行如下配置才能正常使用vnc-viewer进行访问: 1,#vncserver 进行密码配置 2,修改配置文件# vi /root/.vnc/xstartup             1)把twm &注释掉(#twm &)  2)最后增加一行   gnome -session &am