`

Windows下和linux下的Memcache安装

阅读更多

windows下:

很多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-&gt;set(’key’, ‘This is a test!’, 0, 60);
$val = $mem-&gt;get(’key’);
echo $val;
?&gt;

参考资料:
对Memcached有疑问的朋友可以参考下列文章:
Linux下的Memcache安装:http://www.ccvita.com/257.html
Windows下的Memcache安装:http://www.ccvita.com/258.html
Memcache基础教程:http://www.ccvita.com/259.html
Discuz!的Memcache缓存实现:http://www.ccvita.com/261.html
Memcache协议中文版:http://www.ccvita.com/306.html

 

linux下:

很早就想接触下memcacheD一时间也没有机会。
在这里澄清一下,为什么我的文章的标题memcache,而我的上面说的却是memcached?
memcached是一款软件,可以将你的程序或图片以hash的格式存储在服务器内存中。
好了废话少说,下面说的memcache是PHP的一个扩展,你可以到PHP官方去下载地址:http://pecl.php.net/package/memcache
好了,说下安装步骤:
首先得先安装libevent,因为memcached是依赖这个的。
我下载的版本是:
libevent-1.3a.tar.gz
$tar -zvxf libevent-1.3.a.tar.gz
然后进入cd libevent-1.3
$./configure --prefix=/usr/local/libevent //这里我习惯性的会把服务器相关的扩展或软件安装到$/usr/local
$make
$make install
然后安装memcached我用的是memcached-1.2.5.tar.gz版本
这样也很简单,同理:
$tar -zvxf memcached-1.2.5.tar.gz
$./configure --prefix=/usr/local/memcached
$make 
$make install
然后运行:
$/usr/local/memcached/bin/memcached –d –m 500 -l 64.128.191.151 -p 11211 -u root
注释:
-u 以什么帐户启动
-m memcached共享的内存大小(以M为单位)
-l memcached服务的主机IP(一般是本机的IP,此项省略就是所有本机的IP)
-p memcached服务监听的端口(这个可以自己指定,只要不冲突就行,默认是11211)


下面安装PHP的memcache扩展
依然但是tar -zvxf memcache,我的版本是3.0以上,为什么选择这个,因为我的PHP版本是最新的2.5.6
而memcache最新的是3.0以上,考虑对应关系。

解压后进入cd memcache
然后运行:
$/usr/local/php/bin/phpize 回车
然后运行
$./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config --with-zlib-dir
$make
$make install
安装完后会有类似这样的提示:

Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20060922/

把这个记住,然后修改php.ini,把

extension_dir = "./"

修改为

extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20060922/"

并添加一行

extension=memcache.so


好啦,我们测试一下,对了别忘记重新启动下APACHE哦,我安装N次后的经验。
<?php
$memcache = new Memcache; //创建一个memcache对象
$memcache->connect('localhost', 11211) or die ("Could not connect"); //连接Memcached服务器
$memcache-&gt;set('key', 'test'); //设置一个变量到内存中,名称是key 值是test
$get_value = $memcache-&gt;get('key'); //从内存中取出key的值
echo $get_value;
?&gt;
输出test,OK啦,成功安装。

-------------------------------------------------------------------------
其实因为版本不同,以上安装过程还有个头疼的小插曲。
我一开始安装的memcache,是1.5,然后PHPINFO没有看到相关信息。
后来又换了memcache2.0以上版本。
还是不行,头疼,后来实在没办法了,考虑到了静态编译PHP,就是自己重新整理configure,重编译PHP。
把memcache扩展直接插到php源码中,这次我考虑到了版本问题,直接安装的是memcache3.0
相关版本。
首先解压
$tar -zvxf memcache
$cp memcache /soft/phpsrcdir/ext
$ rm configure
$ ./buildconf --force
$ ./configure --help
$ ./configure ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with- mysql=/usr/local/mysql --enable-memcache --enable-mbstring --zlib
$ make
$ make install

phpinfo();一下,出现了memcache相关信息,终于好了,呵呵

 


注意:本地测试,可能会报错。类似于:
Notice: Memcache::connect() [function.Memcache-connect]: Server localhost (tcp 11211) failed with: 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。 (10060) in ***/test.php on line 4

Warning: Memcache::connect() [function.Memcache-connect]: Can't connect to localhost:11211, 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。 (10060) in ***/test.php on line 4
Could not connect

解决办法:

把localhost换成127.0.0.1

分享到:
评论

相关推荐

    windowsLinux下memcache 和Redis 配置文件 php5.0-7.0

    windowsLinux下memcache 和Redis 配置文件 php5.0-7.0 全套

    windows下memcache

    这个是windows平台使用的memcache,可以用于调试,实际生产环境就不要用了,换linux,具体可以查看我的文章: http://blog.csdn.net/cdnight/article/details/18924611

    64位windows系统下安装Memcache缓存

    最近要玩Memcache,所以需要Windows 64位下搭建Memcache的开发调试环境,记录下自己安装搭建的过程,发现比Linux中搭建简单多了。 这里是我用Windows 7 64Bit安装Memcache的过程 1、安装PHP、Mysql以及Apache,这边...

    高洛峰 memcache for window 和linux版软件及教程

    四、安装Memcache服务器(Linux和Window上分别安装) Windows下 Memcahced.exe -d install [uninstall] Memcached.exe –d -m 50 –l 127.0.0.1 -p 11211 start 五、Memcached服务器的管理(启动) ...

    memcache 使用安装说明

    内附高老师的memcache安装说明 本人的使用示例和memcache windows下的安装包、PHP扩展包及linux的源码包 缓存技术是数据库的救星 希望大家多多交流

    php_memcache扩展大全(所有版本)

    所有版本php_memcache扩展,php5.0以上都有,32位系统和64位系统均有,windows版本,mac和linux请谨慎下载,

    阿里云linux一键安装包下载

    memcache、Zend Engine/ OPcache ftp:(yum/apt-get安装) phpwind:8.7 GBK phpmyadmin:4.1.8 2、 可以执行以下命令完成卸载: chmod 777 -R sh-1.5.5/ cd sh-1.5.5/ ./uninstall.sh 3、此包含有xftp安装包和...

    MemCacheClientTest

    memcacheclient 2.0 Windows/Linux 完整测试工程文件。

    php_memcache_dll扩展

    从php5.2到php5.6的memcache扩展均包含其内,本人亲测过5.3、5.5和5.6均是可用的,各版本包括线程安全版和非线程安全版,x86版和x64版,但一般建议使用x86版本,windows和linux均可用

    java memcached2 源代码和安装文件下载

    java memcached2 源代码和jar包以及windows和linux的安装文件

    gomemcache:Go Memcache客户端软件包

    实现以下命令: 获取(单键) 设置,添加,替换,追加,前置删除增量,增量安装go get github.com/kklis/gomemcache 根据您的环境配置,您可能需要root(Linux)或管理员(Windows)访问权限才能运行上述命令。...

    memcached缓存组件资料

    1、 MemCache介绍 2、 MemCache工作原理 3、 MemCache缓存web应用程序架构 ...6、 MemCache在windows下服务端的安装 7、 MemCache在Linux下服务端的安装 8 Linux下telnet的配置及memcache监测 9、 MemCache客户端的使用

    PHP使用memcache缓存技术提高响应速度的方法

    memcache既可以在linux下使用,也可以在windows系统下使用,当然首推linux系统,至于如何安装memcache,google一下就什么都出来了. 下面贴一段memcache的使用例子,代码如下: 复制代码 代码如下:&lt;?php //连接 $mem ...

    memcached-win-32/64-1.4.4-14

    Windows下php中Memcache的安装: 1. 下载memcache的windows稳定版,解压放某个盘下面,比如在c:\memcached 2. 在终端(也即cmd命令界面)下输入 ‘c:\memcached\memcached.exe -d install’ 安装 3. 再输入: ‘c:\...

    决战Nginx:技术卷 - 高性能Web服务器部署与运维.z01(3-3)

    和Ruby开发的网站都会从中获益 包括对应用服务器的管理 对于ASP NET的用户来说 现在从Windows系统下向Linux系统迁移的用户很多 这就无疑会使用Mono 在本书中同样能够找到Mono的使用和迁移的解决方案 本书适用于广大...

    决战Nginx:技术卷 - 高性能Web服务器部署与运维.z02(3-2)

    和Ruby开发的网站都会从中获益 包括对应用服务器的管理 对于ASP NET的用户来说 现在从Windows系统下向Linux系统迁移的用户很多 这就无疑会使用Mono 在本书中同样能够找到Mono的使用和迁移的解决方案 本书适用于广大...

    决战Nginx技术卷

    对于ASP.NET的用户来说,现在从Windows系统下向Linux系统迁移的用户很多,这就无疑会使用Mono,在本书中同样能够找到Mono的使用和迁移的解决方案。  本书适用于广大的Linux爱好者,具有一定Linux基础的系统管理员,...

    treeNMS-1.7.4.zip

    treeNMS采用JAVA开发,基于WEB方式对memcache管理,windows环境下载解压即可使用,Linux环境中也只需将软件复制过去,OSX系统中也可以直接复制过去用,前提是配置好JAVA环境。因为是基于WEB方式的,所以可以直接在...

    图度云办公系统 v1.9.3.zip

    操作系统:Linux/Unix/Windows(Windows可运行Web、PHP、mysql等支持Windows的服务,必要服务如:httpsqs,需要Linux/Unix系统运行) 数据库:mysql Web服务:nginx/Apache (原代码只支持80端口) 队列服务:httpsqs...

    与程序、IT有关的一些资料1

    linux下多进程、多线程编程.txt memcache.txt mySQL.txt nlp.txt perl.txt ph,jsp,asp.txt php.txt python.txt sed.txt shell.txt Symbian.txt Visual Basic appliation.txt Visual C++.txt W3C.txt wcf.txt web 2.0...

Global site tag (gtag.js) - Google Analytics