Linux下编译redis和phpredis的方法
本文讲述了Linux下编译redis和phpredis的方法。分享给大家供大家参考,具体如下:
1、准备工作
下载软件:本站下载地址。
操作系统:CentOS5.5
redis版本:redis-2.6.9
2、编译安装
tarzxvfredis-2.6.9.tar.gz//解压 cdredis-2.6.9 make//编译
如果出现如下错误:
zmalloc.o:Infunction`zmalloc_used_memory':
/data/redis-2.6.9/src/zmalloc.c:223:undefinedreferenceto`__sync_add_and_fetch_4'
collect2:ldreturned1exitstatus
make[1]:***[redis-server]Error1
make[1]:Leavingdirectory`/data/redis-2.6.9/src'
make:***[all]Error2
解决方法:
makeCFLAGS="-march=i686"
当看见“Hint:Torun'maketest'isagoodidea;)”说明编译成功。
makeinstall//安装
说明:其实makeinstall就是:
cp-predis-server/usr/local/bin cp-predis-benchmark/usr/local/bin cp-predis-cli/usr/local/bin cp-predis-check-dump/usr/local/bin cp-predis-check-aof/usr/local/bin
这样,redis就安装成功了。
接下来就是启动Redis了,上面编译后生成的那些可执行文件拷贝到了/usr/local/bin目录下面,他们的作用分别是:
redis-server:Redis服务器的daemon启动程序
redis-cli:Redis命令行操作工具。当然,你也可以用telnet根据其纯文本协议来操作
redis-benchmark:Redis性能测试工具,测试Redis在你的系统及你的配置下的读写性能
启动Redis进程只需要执行这个/usr/local/bin/redis-server/path-to/redis.conf
启动的时候后面要跟上redis的配置文件,这样Redis就顺利启动了.
3、启动redis会出现的问题
Warning:32bitinstancedetectedbutnomemorylimitset.Setting3GBmaxmemorylimitwith'noeviction'policynow.
解决方法:修改配置文件redis.conf 将maxmemory设置为maxmemory1024000000#分配256M内存
WARNINGovercommit_memoryissetto0!Backgroundsavemayfailunderlowmemorycondition.Tofixthisissueadd'vm.overcommit_memory=1'to/etc/sysctl.confandthenrebootorrunthecommand'sysctlvm.overcommit_memory=1'forthistotakeeffect.
解决方法:警告:过量使用内存设置为0!在低内存环境下,后台保存可能失败。为了修正这个问题,请在/etc/sysctl.conf添加一项'vm.overcommit_memory=1',然后重启(或者运行命令'sysctlvm.overcommit_memory=1')使其生效。
当启动的时候没有任何信息,表明启动成功。也可以使用"netstat-tnl"查看6379端口是否启动。
4、开启和关闭redis
redis-server/usr/local/redis-2.6.9/redis.conf开启,注:需要指定redis的配置文件
pkillredis-server停止redis
redis-clishutdown停止redis
5、redis.conf的参数信息
关于redis及其参数信息可参考本站《Redis基本知识、安装、部署、配置笔记》
6、编译phpredis
unzipphpredis-master.zip cdphpredis-master /usr/local/php/bin/phpize ./configure–with-php-config=/usr/local/php/bin/php-config make&&makeinstall
修改php.ini文件。加载redis.so模块,重启Apache!
更多关于PHP相关内容感兴趣的读者可查看本站专题:《phpcurl用法总结》、《PHP运算与运算符用法总结》、《PHP网络编程技巧总结》、《PHP基本语法入门教程》、《php操作office文档技巧总结(包括word,excel,access,ppt)》、《php日期与时间用法总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。