站长论坛

标题: Windows下的Memcache安装 [打印本页]

作者: lbsong    时间: 2009-6-18 15:16
标题: Windows下的Memcache安装
很多phper不知道如何在Windows下搭建Memcache的开发调试环境,最近个人也在研究Memcache,记录下自己安装搭建的过程。
其实我开始研究Memcache的时候并不知道居然还有memcached for Win32这个鸟东西,害得我在CnetOS下折腾1天才搞定,今天突然发现Windows下的Memcache进行开发调试完全没有问题,所以写篇Memcache的文档分享给大家。

Windows下的Memcache安装:
1. 下载memcache的windows稳定版,解压放某个盘下面,比如在c:\memcached
2. 在终端(也即cmd命令界面)下输入 ‘c:\memcached\memcached.exe -d install’ 安装
3. 再输入: ‘c:\memcached\memcached.exe -d start’ 启动。NOTE: 以后memcached将作为windows的一个服务每次开机时自动启动。这样服务器端已经安装完毕了。
4.下载php_memcache.dll,请自己查找对应的php版本的文件
5. 在C:\winnt\php.ini 加入一行 ‘extension=php_memcache.dll’
6.重新启动Apache,然后查看一下phpinfo,如果有memcache,那么就说明安装成功!


memcached的基本设置:

-p 监听的端口
-l 连接的IP地址, 默认是本机
-d start 启动memcached服务
-d restart 重起memcached服务
-d stop|shutdown 关闭正在运行的memcached服务
-d install 安装memcached服务
-d uninstall 卸载memcached服务
-u 以的身份运行 (仅在以root运行的时候有效)
-m 最大内存使用,单位MB。默认64MB
-M 内存耗尽时返回错误,而不是删除项
-c 最大同时连接数,默认是1024
-f 块大小增长因子,默认是1.25
-n 最小分配空间,key+value+flags默认是48
-h 显示帮助

Memcache环境测试:
运行下面的php文件,如果有输出This is a test!,就表示环境搭建成功。开始领略Memcache的魅力把!
< ?php
$mem = new Memcache;
$mem->connect(”127.0.0.1″, 11211);
$mem->set(’key’, ‘This is a test!’, 0, 60);
$val = $mem->get(’key’);
echo $val;
?>
作者: lbsong    时间: 2009-6-18 15:17
不错,不错,谢谢分享
作者: lbsong    时间: 2009-6-18 15:17
php_memcache.dll点击,已经无法下载了,水水,另外

memcached 1.2.1 for Win32 有三个版本,下载那个啊,我是win2003

memcached 1.2.1 for Win32 source code (Dec 23, 2006)
memcached 1.2.1 for Win32 binaries (Dec 23, 2006)
patches to add support for Win32 to the code in the svn (Dec 23, 2006)

谢谢
作者: lbsong    时间: 2009-6-18 15:17
Win32 binaries下载这个

php_memcache.dll可以在这里下载http://pecl.php.net/package/memcache
作者: lbsong    时间: 2009-6-18 15:19
楼主,请教一个问题,我在win环境下面通过命令启动memcached 执行:memcached.exe -d start -p 11217 -l 10.0.68.53

问题:只监听了11211 默认端口,而且不能开通多个端口实例
作者: lbsong    时间: 2009-6-18 15:19
一般情况下 win环境下的Memcached仅仅是作为开发调试之用。
回答完毕
作者: lbsong    时间: 2009-6-18 15:21
windows 下边,如果想将memcache 作为服务安装,并且设置一个1G的内存供它用。应该怎么操作?

memcache.exe -d install -m 1024 -p 11211 -l 127.0.0.1

是这样吗?可是我看服务里边的命令行没变化呀……

是这样设置,你刷新下就变化了,你在win下看服务器列表,比如运行services.msc查看服务器列表,服务器参数改变后,刷新下就能看到了。


kimi 你确定是这样设置的吗?我试了,不行。而且我单独用

memcache.exe -d start -m 256 启动的,但是使用memcache.php 看服务器状态,最大的仍然是64MB。


@tenglong 是的 -m 256参数就表示最大使用内存为256M,我们平时使用都是在Linux下,win下的具体情况没有进行过更多的测试。


我在vista下为什么无法安装啊!当打memcached.exe -d install 时出现failed to install service or service is already installed!!!为什么啊


没碰到过你这种情况
运行services.msc看看Windows Installer是不是禁用了


您好!
按您的方法进行安装, PHPINFO里能看到Memcache, 但是, 运行你下面的那个例子里出错:
Fatal error: Class ‘Memcache’ not found in F:\php\memcache.php on line 2


重新做下面两个步骤~
4.下载php_memcache.dll,请自己查找对应的php版本的文件
5. 在C:\winnt\php.ini 加入一行 ‘extension=php_memcache.dll’


Fatal error: Class ‘Memcache’ not found in F:\php\memcache.php on line 2
也是出现这个错误。还好解决了。
感觉还是版本问题。
我php用的是5.2.6
下载pecl 5.2.6,里面的php_memceche.dll不好用。
又下载了个5.2.1的php_memceche.dll,终于ok了。


Fatal error: Class ‘Memcache’ not found
我用的是php_memcache.dll php-5.2.1
PHP环境是5.2.6,phpinfo显示安装成功,但不知道为什么出现上面的提示!

应该是你下载的php_memceche.dll不对,换个版本试试。

php_memcache.dll可以在这里下载http://pecl.php.net/package/memcache

php 版本5.2.3该下哪个啊?




欢迎光临 站长论坛 (http://www.tzlink.com/bbs/) Powered by Discuz! X3.2