在PHP中使用redis


Posted in PHP onNovember 04, 2013

在Mac OS上安装redis
首先是安装,它会默认安装到/usr/local/bin下

cd /tmp
wget http://redis.googlecode.com/files/redis-2.6.9.tar.gz
tar -zxf redis-2.6.9.tar.gz
cd redis-2.6.9
make
sudo make install

然后下载一些配置文件(主要就是把deamon打开之类的,没对比与默认配置的区别)
wget https://github.com/ijonas/dotfiles/raw/master/etc/redis.conf
sudo mv redis.conf /etc/redis.conf
sudo /usr/local/bin/redis-server redis.conf
说到这里备注下,如果没有目录权限,是无法建立
/var/log/redis/redis.log
/var/lib/redis/

导致redis启动失败
ok,现在已经大功告成,你的redis已经成功运行起来了。
试试看吧!
/opt/redis/redis-cli
#会看到提示 redis 127.0.0.1:6379>说明已经连接服务。
set anythink helloworld
get anythink
exit

good 看到了helloworld,说明一切正常。
如果我需要停止redis或者需要重新启动呢?
cat /opt/redis/redis.pid
#cat后会得到一个pid,我的是44277
sudo kill 44277
# 启动方法和之前一样。

设置开机自启动、后台运行
然后以root身份做以下事情:
在/Library/LaunchDaemons下新建com.redis.plist,内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
        <key>Label</key>
        <string>com.redis</string>
        <key>RunAtLoad</key>
        <true/>
        <key>ProgramArguments</key>
        <array>
                <string>/usr/local/bin/redis-server</string>
                <string>/etc/redis.conf</string>
        </array>
</dict>
</plist>

之后运行
sudo launchtcl load /Library/LaunchDaemons/com.redis.plist
sudo launchtcl start com.redis

检查一下情况:
$ cat /var/run/redis.pid

如果出来pid的数字,说明就运行了~
安装php-redis扩展
如果你需要在PHP中使用redis,那么请继续往下看
curl -O https://nodeload.github.com/nicolasff/phpredis/zip/master
tar -zxf master
cd phpredis-master/
phpize
./configure
make
sudo make install# 这时候会提示一个路径
# /usr/lib/php/extensions/no-debug-non-zts-20090626/
# 表示已经将扩展放置在该位置
vim /etc/php.ini
#增加如下内容
extension=redis.so
#重启apache
sudo httpd -k restart
#查看扩展安装情况
php -m |grep redis
#出现 redis 表示安装成功。

如果执行phpize提示如下错误
Cannot find autoconf. Please check your autoconf installation
and the $PHP_AUTOCONF environment variable.
Then, rerun this script.

请分别下载M4,autoconf编译安装

curl -O http://ftp.gnu.org/gnu/m4/m4-1.4.9.tar.gz
curl -O http://ftp.gnu.org/gnu/autoconf/autoconf-2.62.tar.gz

注意,以上使用的apache、php均为MacOS自带的,如果是自己安装的phpize请指定绝对路径。
图形管理工具
另:redis还有一个基于WEB的图形界面管理工具,叫phpRedisAdmin,如果刚开启服务会出现一些Undefined index,过一会就好了。如果想试试可以使用如下命令安装(git推荐使用SourceTree安装)该管理工具支持String、Hash、List、Set、Zset
git clone https://github.com/ErikDubbelboer/phpRedisAdmin.git
cd phpRedisAdmin/
git clone https://github.com/nrk/predis.git
PHP 相关文章推荐
一个数据采集类
Feb 14 PHP
PHP 木马攻击防御技巧
Jun 13 PHP
php 修改zen-cart下单和付款流程以防止漏单
Mar 08 PHP
基于MySQL体系结构的分析
May 02 PHP
php foreach循环中使用引用的问题
Nov 06 PHP
yii框架通过控制台命令创建定时任务示例
Apr 30 PHP
PHP使用gmdate实现将一个UNIX 时间格式化成GMT文本的方法
Mar 19 PHP
php计算税后工资的方法
Jul 28 PHP
php图形jpgraph操作实例分析
Feb 22 PHP
ThinkPHP开发--使用七牛云储存
Sep 14 PHP
Laravel框架用户登陆身份验证实现方法详解
Sep 14 PHP
PHP实现权限管理功能示例
Sep 22 PHP
6种php上传图片重命名的方法实例
Nov 04 #PHP
php preg_replace替换实例讲解
Nov 04 #PHP
php define的第二个参数使用方法
Nov 04 #PHP
Linux编译升级php的详细方法
Nov 04 #PHP
php获取操作系统语言代码
Nov 04 #PHP
Php header()函数语法及使用代码
Nov 04 #PHP
php配置php-fpm启动参数及配置详解
Nov 04 #PHP
You might like
怎样才能成为PHP高手?学会“懒惰”的编程
2006/12/05 PHP
php下用GD生成生成缩略图的两个选择和区别
2007/04/17 PHP
PHP图片等比缩放类SimpleImage使用方法和使用实例分享
2014/04/10 PHP
php cli配置文件问题分析
2015/10/15 PHP
php遍历、读取文件夹中图片并分页显示图片的方法
2016/11/15 PHP
thinkphp5.1框架实现格式化mysql时间戳为日期的方式小结
2019/10/10 PHP
通过jQuery源码学习javascript(一)
2012/12/27 Javascript
利用毫秒减值计算时长的js代码
2013/09/22 Javascript
jquery实现table鼠标经过变色代码
2013/09/25 Javascript
jquery获取tagName再进行判断
2014/05/29 Javascript
javascript中使用new与不使用实例化对象的区别
2015/06/22 Javascript
JS实现获取当前URL和来源URL的方法
2016/08/24 Javascript
详解Nodejs的timers模块
2016/12/22 NodeJs
详解微信小程序开发—你期待的分享功能来了,微信小程序序新增5大功能
2016/12/23 Javascript
一句jQuery代码实现返回顶部效果(简单实用)
2016/12/28 Javascript
超全面的JavaScript开发规范(推荐)
2017/01/21 Javascript
Nodejs之TCP服务端与客户端聊天程序详解
2017/07/07 NodeJs
JS设计模式之数据访问对象模式的实例讲解
2017/09/30 Javascript
vue将后台数据时间戳转换成日期格式
2019/07/31 Javascript
Python递归遍历列表及输出的实现方法
2015/05/19 Python
Python selenium文件上传方法汇总
2020/11/19 Python
python中的不可变数据类型与可变数据类型详解
2018/09/16 Python
python tkinter界面居中显示的方法
2018/10/11 Python
seek引发的python文件读写的问题及解决
2019/07/26 Python
HTML5逐步分析实现拖放功能的方法
2020/09/30 HTML / CSS
FORZIERI澳大利亚站:全球顶级奢华配饰精品店
2016/12/31 全球购物
荷兰鞋子在线:Nelson Schoenen
2017/12/25 全球购物
Gloeilampgoedkoop荷兰:在线购买灯泡
2019/02/16 全球购物
网络工程师面试(三木通信技术有限公司)
2013/06/05 面试题
应届毕业生求职信
2013/11/30 职场文书
促销活动策划方案
2014/01/12 职场文书
机房搬迁方案
2014/05/01 职场文书
单位个人查摆问题及整改措施
2014/10/28 职场文书
高考学习决心书
2015/02/04 职场文书
2015年艾滋病防治工作总结
2015/05/22 职场文书
Python爬虫基础之简单说一下scrapy的框架结构
2021/06/26 Python