在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 相关文章推荐
ZF等常用php框架中存在的问题
Jan 10 PHP
PHP实时显示输出
Oct 02 PHP
php中强制下载文件的代码(解决了IE下中文文件名乱码问题)
May 09 PHP
深入PHP购物车模块功能分析(函数讲解,附源码)
Jun 25 PHP
PHP生成数组再传给js的方法
Aug 07 PHP
PHP中变量引用与变量销毁机制分析
Nov 15 PHP
php实现四舍五入的方法小结
Mar 03 PHP
PHP开发Apache服务器配置
Jul 15 PHP
PHP中file_exists使用中遇到的问题小结
Apr 05 PHP
php获取文件名称和扩展名的方法
Feb 07 PHP
php+mysql开发中的经验与常识小结
Mar 25 PHP
PHP进阶学习之命名空间基本用法分析
Jun 18 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/10/09 PHP
PHP垃圾回收机制引用计数器概念分析
2013/06/24 PHP
PHP实现加密的几种方式介绍
2015/02/22 PHP
PHP设计模式之策略模式原理与用法实例分析
2019/04/04 PHP
理解Javascript_10_对象模型
2010/10/16 Javascript
一行代码告别document.getElementById
2012/06/01 Javascript
js获取系统的根路径实现介绍
2013/09/08 Javascript
javascript不可用的问题探究
2013/10/01 Javascript
JS验证逗号隔开可以是中文字母数字
2016/04/22 Javascript
vue使用watch 观察路由变化,重新获取内容
2017/03/08 Javascript
详解Vue 动态添加模板的几种方法
2017/04/25 Javascript
JavaScript中offsetWidth的bug及解决方法
2017/05/17 Javascript
JavaScript实现重力下落与弹性效果的方法分析
2017/12/20 Javascript
webpack vue 项目打包生成的文件,资源文件报404问题的修复方法(总结篇)
2018/01/09 Javascript
详解vue 数据传递的方法
2018/04/19 Javascript
JavaScript中this用法学习笔记
2019/03/17 Javascript
vuex(vue状态管理)的特殊应用案例分享
2020/03/03 Javascript
vue3.0中setup使用(两种用法)
2020/12/02 Vue.js
[00:23]魔方之谜解锁款式
2018/12/20 DOTA
python 字典 按key值大小 倒序取值的实例
2018/07/06 Python
python学习--使用QQ邮箱发送邮件代码实例
2019/04/16 Python
Python Django 页面上展示固定的页码数实现代码
2019/08/21 Python
如何使用python传入不确定个数参数
2020/02/18 Python
python剪切视频与合并视频的实现
2020/03/03 Python
使用Python实现将多表分批次从数据库导出到Excel
2020/05/15 Python
教学改革实施方案
2014/03/31 职场文书
党的群众路线教育学习材料
2014/05/12 职场文书
祖国在我心中演讲稿(小学生)
2014/09/23 职场文书
趣味运动会通讯稿
2015/07/18 职场文书
2015教师节通讯稿
2015/07/20 职场文书
2016新年问候语大全
2015/11/11 职场文书
小学生优秀作文范文(六篇)
2019/07/10 职场文书
优胜劣汰,强者为王——读《鲁滨逊漂流记》有感
2019/08/15 职场文书
goland设置颜色和字体的操作
2021/05/05 Golang
MySQL中优化SQL语句的方法(show status、explain分析服务器状态信息)
2022/04/09 MySQL
如何使用python包中的sched事件调度器
2022/04/30 Python