在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 相关文章推荐
编写PHP的安全策略
Oct 09 PHP
Apache中php.ini的设置方法
Feb 28 PHP
深入理解PHP几个算法:PHP冒泡、PHP二分法、PHP求素数、PHP乘法表
Jun 06 PHP
PHP set_error_handler()函数使用详解(示例)
Nov 12 PHP
PHP以mysqli方式连接类完整代码实例
Jul 15 PHP
PHP基于phpqrcode生成带LOGO图像的二维码实例
Jul 10 PHP
3种php生成唯一id的方法
Nov 23 PHP
php is_writable判断文件是否可写实例代码
Oct 13 PHP
PHP机器学习库php-ml的简单测试和使用方法
Jul 14 PHP
Ajax中的JSON格式与php传输过程全面解析
Nov 14 PHP
PHP操作Redis常用技巧总结
Apr 24 PHP
PHP程序员简单的开展服务治理架构操作详解(一)
May 14 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学习之数据类型之间的转换介绍
2011/06/09 PHP
基于php iconv函数的使用详解
2013/06/09 PHP
PHP的反射类ReflectionClass、ReflectionMethod使用实例
2014/08/05 PHP
PHP获取youku视频真实flv文件地址的方法
2014/12/23 PHP
php禁用函数设置及查看方法详解
2016/07/25 PHP
Laravel搭建后台登录系统步骤详解
2016/07/26 PHP
javascript事件函数中获得事件源的两种不错方法
2014/03/17 Javascript
JS自定义函数对web前端上传的文件进行类型大小判断
2016/10/19 Javascript
AngularJS constant和value区别详解
2017/02/28 Javascript
AngularJs 常用的过滤器
2017/05/15 Javascript
jquery插件开发模式实例详解
2019/07/20 jQuery
vue-路由精讲 二级路由和三级路由的作用
2020/08/06 Javascript
python和shell变量互相传递的几种方法
2013/11/20 Python
Python编码类型转换方法详解
2016/07/01 Python
Python优化技巧之利用ctypes提高执行速度
2016/09/11 Python
Python正则表达式实现截取成对括号的方法
2017/01/06 Python
Python 关于反射和类的特殊成员方法
2017/09/14 Python
APIStar:一个专为Python3设计的API框架
2018/09/26 Python
python爬取指定微信公众号文章
2018/12/20 Python
python3.7 sys模块的具体使用
2019/07/22 Python
matplotlib命令与格式之tick坐标轴日期格式(设置日期主副刻度)
2019/08/06 Python
Python单例模式的四种创建方式实例解析
2020/03/04 Python
python matplotlib 绘图 和 dpi对应关系详解
2020/03/14 Python
Ubuntu中配置TensorFlow使用环境的方法
2020/04/21 Python
JAVA及PYTHON质数计算代码对比解析
2020/06/10 Python
使用python编写一个语音朗读闹钟功能的示例代码
2020/07/14 Python
实例代码讲解Python 线程池
2020/08/24 Python
世界上最大的汽车共享网站:Zipcar
2017/01/14 全球购物
荷兰皇家航空公司官方网站:KLM Royal Dutch Airlines
2017/12/07 全球购物
Sunglasses Shop瑞典:欧洲领先的太阳镜网上商店
2018/04/22 全球购物
Linux文件系统类型
2012/09/16 面试题
化学相关工作求职信
2013/10/02 职场文书
优秀团队获奖感言
2014/02/19 职场文书
团队精神口号
2014/06/06 职场文书
保留意见审计报告
2015/06/05 职场文书
科学家研发出新型速效酶,可在 24 小时内降解塑料制品
2022/04/29 数码科技