Linux下编译redis和phpredis的方法


Posted in PHP onApril 07, 2016

本文讲述了Linux下编译redis和phpredis的方法。分享给大家供大家参考,具体如下:

1、准备工作

下载软件:本站下载地址。
操作系统:CentOS 5.5
redis 版本:redis-2.6.9

2、编译安装

tar zxvf redis-2.6.9.tar.gz //解压 
cd redis-2.6.9 
make  //编译

如果出现如下错误:

zmalloc.o: In function `zmalloc_used_memory':
/data/redis-2.6.9/src/zmalloc.c:223: undefined reference to `__sync_add_and_fetch_4'
collect2: ld returned 1 exit status
make[1]: *** [redis-server] Error 1
make[1]: Leaving directory `/data/redis-2.6.9/src'
make: *** [all] Error 2

解决方法:

make CFLAGS="-march=i686"

当看见“Hint: To run 'make test' is a good idea ;)” 说明编译成功。

make install  //安装

说明:其实 make install 就是:

cp -p redis-server /usr/local/bin
cp -p redis-benchmark /usr/local/bin
cp -p redis-cli /usr/local/bin
cp -p redis-check-dump /usr/local/bin
cp -p redis-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: 32 bit instance detected but no memory limit set. Setting 3 GB maxmemory limit with 'noeviction' policy now.

解决方法:修改配置文件 redis.conf  将 maxmemory 设置为 maxmemory 1024000000 #分配256M内存

WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.

解决方法:警告:过量使用内存设置为0!在低内存环境下,后台保存可能失败。为了修正这个问题,请在/etc/sysctl.conf 添加一项 'vm.overcommit_memory = 1' ,然后重启(或者运行命令'sysctl vm.overcommit_memory=1' )使其生效。

当启动的时候没有任何信息,表明启动成功。也可以使用 "netstat -tnl" 查看6379端口是否启动。

4、开启和关闭 redis

redis-server /usr/local/redis-2.6.9/redis.conf 开启,注:需要指定 redis 的配置文件

pkill redis-server 停止 redis
redis-cli shutdown 停止 redis

5、redis.conf 的参数信息

关于redis及其参数信息可参考本站《Redis基本知识、安装、部署、配置笔记》

6、编译 phpredis

unzip phpredis-master.zip
cd phpredis-master
/usr/local/php/bin/phpize
./configure ?with-php-config=/usr/local/php/bin/php-config
make && make install

修改 php.ini 文件。加载 redis.so 模块,重启 Apache !

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
php将session放入memcached的设置方法
Feb 14 PHP
自定义session存储机制避免会话保持问题
Oct 08 PHP
php+ajax实时输入自动搜索匹配的方法
Dec 26 PHP
PHP rsa加密解密使用方法
Apr 27 PHP
php根据生日计算年龄的方法
Jul 13 PHP
Yii使用技巧大汇总
Dec 29 PHP
php+jQuery+Ajax实现点赞效果的方法(附源码下载)
Jul 21 PHP
php中序列化与反序列化详解
Feb 13 PHP
PHP实现微信支付(jsapi支付)流程步骤详解
Mar 15 PHP
PHP性能测试工具xhprof安装与使用方法详解
Apr 29 PHP
PHP高并发和大流量解决方案整理
Mar 09 PHP
php 实现进制相互转换
Apr 07 #PHP
Linux(CentOS)下PHP扩展PDO编译安装的方法
Apr 07 #PHP
php制作简单模版引擎
Apr 07 #PHP
thinkphp框架下实现登录、注册、找回密码功能
Apr 06 #PHP
非常有用的9个PHP代码片段
Apr 06 #PHP
10个对初学者非常有用的PHP技巧
Apr 06 #PHP
yii2.0实现pathinfo的形式访问的配置方法
Apr 06 #PHP
You might like
php 不使用js实现页面跳转
2014/02/11 PHP
php计算当前程序执行时间示例
2014/04/24 PHP
windows下配置php5.5开发环境及开发扩展
2014/12/25 PHP
ThinkPHP框架实现的微信支付接口开发完整示例
2019/04/10 PHP
让焦点自动跳转
2006/07/01 Javascript
js 禁用浏览器的后退功能的简单方法
2008/12/10 Javascript
js操作时间(年-月-日 时-分-秒 星期几)
2010/06/20 Javascript
JavaScript Accessor实现说明
2010/12/06 Javascript
JavaScript自定义事件介绍
2013/08/29 Javascript
js+jquery常用知识点汇总
2015/03/03 Javascript
JQuery页面地址处理插件jqURL详解
2015/05/03 Javascript
js实现仿qq消息的弹出窗效果
2016/01/06 Javascript
JS实现关闭当前页而不弹出提示框的方法
2016/06/22 Javascript
详解AngularJS中ng-src指令的使用
2016/09/07 Javascript
模块化react-router配置方法详解
2019/06/03 Javascript
怎么使用javascript深度拷贝一个数组
2019/06/06 Javascript
纯异步nodejs文件夹(目录)复制功能
2019/09/03 NodeJs
js+canvas实现简单扫雷小游戏
2021/01/22 Javascript
javascript设计模式 ? 外观模式原理与用法实例分析
2020/04/15 Javascript
vue封装自定义指令之动态显示title操作(溢出显示,不溢出不显示)
2020/11/12 Javascript
python操作数据库之sqlite3打开数据库、删除、修改示例
2014/03/13 Python
如何将python中的List转化成dictionary
2016/08/15 Python
Python网络爬虫出现乱码问题的解决方法
2017/01/05 Python
JSON Web Tokens的实现原理
2017/04/02 Python
Python 获得13位unix时间戳的方法
2017/10/20 Python
opencv调整图像亮度对比度的示例代码
2019/09/27 Python
python爬虫scrapy基本使用超详细教程
2021/02/20 Python
世界上最大的在线旅行社新加坡网站:Expedia新加坡
2016/08/25 全球购物
编码实现字符串转整型的函数
2012/06/02 面试题
国培计划培训感言
2014/03/11 职场文书
汽车维修求职信
2014/06/15 职场文书
2014年政协委员工作总结
2014/12/01 职场文书
英雄儿女观后感
2015/06/09 职场文书
学校中层领导培训心得体会
2016/01/11 职场文书
python制作图形界面的2048游戏, 基于tkinter
2021/04/06 Python
python实现的人脸识别打卡系统
2021/05/08 Python