今天总结一下如何在Windows操作系统中安装、启动和卸载memcached:
下载地址: http://download.csdn.net/download/wangshuxuncom/8249501

或者(https://files.cnblogs.com/files/chy123/memcached_win64%28jb51.net%29.rar

2、解压获取到的压缩文件,将得到一个名为“memcached-1.2.6-win32-bin”的文件夹,将该文件夹拷贝到自认为适当的位置(比如拷贝到C盘根目录);
3、通过cmd命令进入Windows的命令行模式,输入如下命令“cd /d C:\memcached-1.2.6-win32-bin”,敲击回车键,得到下图:

4、下面依次介绍memcached的安装、启动和卸载:
a、在第3步中输入“memcached.exe -d install”,然后点击回车键,得到下图:

b、上述命令执行过后在“服务”列表中会看到memcached已列入其中:

a、在上图中我们看到新安装的memcached并没有处于启动状态,如何启动它呢?在命令行窗口中执行“memcached.exe -d start”,得到下图:

b、执行过上面的命令后,刷新“服务”列表,即可看到memcached已经启动:

或者启动任务管理器查看进程:

a、在卸载memcached以前,要先停止其启动,否则会出现如下问题:

b、通过在命令行窗口执行“memcached.exe -d stop”即可将memcached置于停用状态,如下图:

c、在命令行窗口执行“memcached.exe -d uninstall”即可将memcached卸载下来。

d、安装完成后,下面就进入测试的环节

输入命令行telnet 127.0.0.1 11211进行测试:如果安装成功的话会跳出一个dos页面,开始什么都不显示,回车后输入命令  stats  查看统计信息,如下图,说明服务器运作正常。(备注:win7中可能会出现“telnet’不是内部或外部命令”的错误,这是因为系统中默认没有安装telnet的缘故,可在“控制面板”->“程序”->“程序和功能”->“打开或关闭Windows功能”中打开“Telnet客户端”。)

连接上端口后输入 stats命令,即可得到描述Memcached服务器运行情况的参数。 
STAT pid 4356 服务器进程ID 
STAT uptime 56625 服务器运行时间,单位秒 
STAT time 1225249079 服务器当前的UNIX时间 
STAT version 1.1.0 服务器的版本号 
STAT pointer_size 64 
STAT rusage_user 151.845489 该进程累计的用户时间(秒:微妙) 
STAT rusage_system 121.667603 该进程累计的系统时间(秒:微妙) 
STAT ibuffer_size 4096 
STAT curr_connections 13 连接数量 
STAT total_connections 54136 服务器运行以来接受的连接总数 
STAT connection_structures 318 服务器分配的连接结构的数量 
STAT cmd_get 100595 取回请求总数 
STAT cmd_set 6510 存储请求总数 
STAT get_hits 96543 请求成功的总次数 
STAT get_misses 4052 请求失败的总次数 
STAT bytes_read 4427679 服务器从网络读取到的总字节数 
STAT bytes_written 6585596 服务器向网络发送的总字节数

e、windows php5.4.3添加memcache扩展

memcache与memcached的区别:Memcached是一个内存缓存系统,而Memcache是php的一个扩展,是php用于操作和管理Memcached的工具。如果安装了Memcached但没有安装Memcache,等于只是安装了缓存服务,但是php无法操控Memcached,但是可以使用命令行来操控Memcached;如果安装了Memcache却没安装Memcached,则无法使用。只有同时安装了Memcached和Memcache,才能在PHP中使用Memcached。

php5.4.3添加memcache扩展,必须是指定对应的版本扩展,不然不生效。
首先下载php5.4对应版本的php_memcache.dll扩展。
下载地址:http://download.csdn.net/detail/wwenwei2011/5102338

https://pecl.php.net/package/memcache

使用phpinfo()函数查看PHP的版本信息,是否线程安全,以及编译版本,这会决定扩展文件版本,以及php.ini
的地址,以及扩展存放地址,如果是wamp。一定要注意版本位数不然容易出现Fatal error: Class 'Memcache' not found

解压缩后,将php_memcache.dll拷贝至php的ext目录下
修改php.ini,(PS:此php.ini文件是在Apache目录)在该文件中加入:
extension=php_memcache.dll

重启Apache后,使用phpinfo查看扩展是否成功安装

参考文档:http://www.tuicool.com/articles/nyIjQvZ

http://www.jb51.net/article/63601.htm
https://pecl.php.net/package/memcache

测试php链接:memcache扩展包中自带的example.php

管理工具:

1:C# 实现 MemCache 监控管理工具  参考网址:http://www.cnblogs.com/xffy1028/archive/2013/02/01/2861706.html  这个客户端在windows下面用还行

2:web页面

  i:参考网址:http://www.junopen.com/memadmin/

ii:参考网址:http://www.treesoft.cn/dms.html

iii:memcache扩展包中自带的memcache.php 参考网址:http://www.cnblogs.com/zhuque/archive/2012/11/05/2763346.html

memcached安全验证:参考文档:http://www.jb51.net/article/27195.htm

Memcache服务器端都是直接通过客户端连接后直接操作,没有任何的验证过程,这样如果服务器是直接暴露在互联网上的话是比较危险,轻则数据泄露被其他无关人员查看,重则服务器被入侵,因为Mecache是以root权限运行的,况且里面可能存在一些我们未知的bug或者是缓冲区溢出的情况,这些都是我们未知的,所以危险性是可以预见的。为了安全起见,我做两点建议,能够稍微的防止黑客的入侵或者数据的泄露。

内网访问 
最好把两台服务器之间的访问是内网形态的,一般是Web服务器跟Memcache服务器之间。普遍的服务器都是有两块网卡,一块指向互联网,一块指向内网,那么就让Web服务器通过内网的网卡来访问Memcache服务器,我们Memcache的服务器上启动的时候就监听内网的IP地址和端口,内网间的访问能够有效阻止其他非法的访问。 
# memcached -d -m 1024 -u root -l 192.168.0.200 -p 11211 -c 1024 -P /tmp/memcached.pid 
Memcache服务器端设置监听通过内网的192.168.0.200的ip的11211端口,占用1024MB内存,并且允许最大1024个并发连接

设置防火墙 
防火墙是简单有效的方式,如果却是两台服务器都是挂在网的,并且需要通过外网IP来访问Memcache的话,那么可以考虑使用防火墙或者代理程序来过滤非法访问。 
一般我们在Linux下可以使用iptables或者FreeBSD下的ipfw来指定一些规则防止一些非法的访问,比如我们可以设置只允许我们的Web服务器来访问我们Memcache服务器,同时阻止其他的访问。 
# iptables -F 
# iptables -P INPUT DROP 
# iptables -A INPUT -p tcp -s 192.168.0.2 –dport 11211 -j ACCEPT 
# iptables -A INPUT -p udp -s 192.168.0.2 –dport 11211 -j ACCEPT 
上面的iptables规则就是只允许192.168.0.2这台Web服务器对Memcache服务器的访问,能够有效的阻止一些非法访问,相应的也可以增加一些其他的规则来加强安全性,这个可以根据自己的需要来做

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

Memcached一些特性和限制 参考文档:https://www.oschina.net/question/234345_42556
• 在 Memcached 中可以保存的item数据量是没有限制的,只有内存足够 
• Memcached单进程最大使用内存为2G,要使用更多内存,可以分多个端口开启多个Memcached进程 
• 最大30天的数据过期时间, 设置为永久的也会在这个时间过期,常量REALTIME_MAXDELTA 
60*60*24*30 控制 
• 最大键长为250字节,大于该长度无法存储,常量KEY_MAX_LENGTH 250 控制 
• 单个item最大数据是1MB,超过1MB数据不予存储,常量POWER_BLOCK 1048576 进行控制, 
它是默认的slab大小 
• 最大同时连接数是200,通过 conn_init()中的freetotal 进行控制,最大软连接数是1024,通过 
settings.maxconns=1024 进行控制 
• 跟空间占用相关的参数:settings.factor=1.25, settings.chunk_size=48, 影响slab的数据占用和步进方式
 
查看Memcached内部工作状态 
访问Memcached:telnet 主机名 端口号 
查看总状态:stats 
查看某项状态:stats curr_connections 
禁止LRU 
有些情况下LRU机制反倒会造成麻烦。memcached启动时通过“-M”参数可以禁止LRU, 
如下所示: 
$ memcached -M -m 1024 
启动时必须注意的是,小写的“-m”选项是用来指定最大内存大小的。不指定具体数值则 
使用默认值64MB。 
指定“-M”参数启动后,内存用尽时memcached会返回错误。话说回来,memcached毕 
竟不是存储器,而是缓存,所以推荐使用LRU。
 
Memcached使用线程模式工作 
在安装的时候必须打开:./configure --enable-threads 
安装完之后,启动的时候看看帮助信息有没有这条: 
-t <num> number of threads to use, default 4 
如果存在该选项,说明已经支持了线程,就可以在启动的时候使用 -t 选项来启动多线程 
然后启动的时候必须加上你需要支持的线程数量: 
/usr/local/memcache/bin/memcached -t 1024
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

windows操作系统中安装、启动和卸载memcached的更多相关文章

  1. 在Windows操作系统中安装MongoDB

    如何在Windows操作系统中安装MongoDB: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-windows/ 启动Mon ...

  2. Git—怎样Windows操作系统中安装Git

    介绍一下怎样在Windows操作系统中安装Git: 一.下载Git安装压缩文件:http://download.csdn.net/detail/wangshuxuncom/8035045 二.解压该压 ...

  3. Maven—Windows操作系统中安装配置Maven环境

    今天难得的周末,借此难的机会总结一下关于maven的一些操作: 1.在安装maven之前要确认计算机已经安装并配置了JDK. 2.下载maven: maven-3.0.3:http://downloa ...

  4. 在Windows系统中安装集成的PHP开发环境

    原文:在Windows系统中安装集成的PHP开发环境 刚想学php的,又不会配置复杂php的环境,可以使用集成的,目前网上提供常用的PHP集成环境主要有AppServ.phpStudy.WAMP和XA ...

  5. 在64位Win7操作系统中安装Microsoft Access Engine的解决方案

    在64位Win7操作系统中安装Microsoft Access Engine的解决方案 现在的Win7系统中安装的一般都是32位的Office,因为微软推荐使用32位的Office,兼容性更强,稳定性 ...

  6. [转]在 Windows 操作系统中的已知安全标识符(Sid security identifiers)

    安全标识符 (SID) 是用于标识安全主体或安全组在 Windows 操作系统中的可变长度的唯一值.常用 Sid 的 Sid 标识普通用户的一组或通用组.跨所有操作系统,它们的值保持不变. 此信息可用 ...

  7. mysql绿色版在windows系统中的启动

    mysql绿色版在windows系统中的启动 1.下载mysql免安装版 例如:mysql-5.7.11-winx64 2.修改配置文件,my-default.ini名称改为:my.ini,文件里面的 ...

  8. 在Windows操作系统中,如何终止占有的8080端口的tomcat进程

    在Windows操作系统中,我们在启动一个tomcat服务器时,经常会发现8080端口已经被占用的错误,而我们又不知道如何停止这个tomcat服务器. 本文将通过命令来强行终止这个已经运行的tomca ...

  9. Ant—怎样Windows操作系统中搭建Apache Ant环境

    介绍一下怎样在Windows操作系统中搭建Apache Ant环境: 一.下载Apache Ant压缩文件:http://download.csdn.net/detail/wangshuxuncom/ ...

随机推荐

  1. JDBC链接oracle数据库

    package test; import java.sql.* ; public class JDBC_Test { //orcl为oracle数据库中的数据库名,localhost表示连接本机的or ...

  2. 6-nginx-会话一致性解决(sesion一致)

    由于tomcat使用的为集群, 通过nginx访问时轮询不同的tomcat, 使得session无法统一, 所以将session单独抽取出来做共享session. 此tomcat版本为 7.0.61. ...

  3. Linux发行版,分类,CentOS下载

    目录 Debian 系(dpkg) 1. 包管理 2. 发行版 Red Hat 系(rpm) 1. 包管理 2. 发行版 其他发行版   Debian 系(dpkg) 1. 包管理 包管理器:dpkg ...

  4. Nodejs学习笔记(二)—事件模块

    一.简介及资料  http://nodejs.org/api/events.html  http://www.infoq.com/cn/articles/tyq-nodejs-event events ...

  5. Markdown编辑器-图形化

    SELECT * from yffee_favourable_detail yfd LEFT JOIN yffee_favourable yf on yfd.minor_id = yf.major_i ...

  6. golang基础--func函数

    函数function Go函数不支持 嵌套, 重载和默认参数 支持以下特性: 无须声明原型,不定长度长度变参,多返回值,命名返回值参数,匿名函数,闭包 定义函数使用关键字func,且左侧大括号不能另起 ...

  7. [转] Lodop、C-Lodop使用说明及样例

    本文转自:http://www.lodop.net/LodopDemo.html Lodop(标音:劳道谱,俗称:露肚皮)是专业WEB控件,用它既可裁剪输出页面内容,又可用程序代码直接实现 复杂打印. ...

  8. git分支branch合并到主分支master

    如何使用git将分支branch合并到主干master上 对于一人独立使用git进行系统开发时,branch分支相当于版本(Version),如果每次都将新的分支branch提交到GitHub上,则会 ...

  9. PHP 类与对象 全解析(三)

    目录 PHP 类与对象 全解析( 一) PHP 类与对象 全解析( 二) PHP 类与对象 全解析(三 ) 13.魔术方法 定义:PHP把所有以__(两个下划线)开头的类方法当成魔术方法     __ ...

  10. 在SQLSERVER中如何检测一个字符串中是否包含另一个字符串

    --当charindex返回值大于0时则包含 为0不包含 select CHARINDEX('456','123456')   SQL语句使用CHARINDEX函数,来测试一个字符串中是否包含另一个字 ...