博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
debian6 Redis+phpredis安装
阅读量:7119 次
发布时间:2019-06-28

本文共 5555 字,大约阅读时间需要 18 分钟。

  hot3.png

    最近在使用redis,刚开始学习,一点一点慢慢积累,根据需求打算最终替换我的mysql库中的一个表,关于redis的介绍google之,下面先开始安装吧,使用系统为debian6。

    下载最新的稳定版redis

wget http://redis.googlecode.com/files/redis-2.4.16.tar.gz
    安装
tar xzf redis-2.4.16.tar.gzcd redis-2.4.16makecp src/redis-server /usr/bin/cp src/redis-cli /usr/bin/cp src/redis-check-aof /usr/bin/cp src/redis-check-dump /usr/bin/cp src/redis-benchmark /usr/bin/
    编写redis启动脚本:/etc/init.d/redis-server
#! /bin/sh### BEGIN INIT INFO# Provides:		redis-server# Required-Start:	$syslog $remote_fs# Required-Stop:	$syslog $remote_fs# Should-Start:		$local_fs# Should-Stop:		$local_fs# Default-Start:	2 3 4 5# Default-Stop:		0 1 6# Short-Description:	redis-server - Persistent key-value db# Description:		redis-server - Persistent key-value db### END INIT INFOPATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/binDAEMON=/usr/bin/redis-serverDAEMON_ARGS=/etc/redis/redis.confNAME=redis-serverDESC=redis-serverPIDFILE=/var/run/redis.pidtest -x $DAEMON || exit 0test -x $DAEMONBOOTSTRAP || exit 0set -ecase "$1" in  start)	echo -n "Starting $DESC: "	touch $PIDFILE	chown root:root $PIDFILE	if start-stop-daemon --start --quiet --umask 007 --pidfile $PIDFILE --chuid root:root --exec $DAEMON -- $DAEMON_ARGS	then		echo "$NAME."	else		echo "failed"	fi	;;  stop)	echo -n "Stopping $DESC: "	if start-stop-daemon --stop --retry 10 --quiet --oknodo --pidfile $PIDFILE --exec $DAEMON	then		echo "$NAME."	else		echo "failed"	fi	rm -f $PIDFILE	;;  restart|force-reload)	${0} stop	${0} start	;;  *)	echo "Usage: /etc/init.d/$NAME {start|stop|restart|force-reload}" >&2	exit 1	;;esacexit 0
    制定配置文件/etc/redis/redis.conf,在redis的源码包中有一个redis.conf配置文件,拷贝至/etc/redis目录下,启动redis:/etc/init.d/redis-server start 即可启动redis,当然不使用启动脚本也是可以的,直接使用redis-server命令启动redis服务,需要在启动时手动指定一个redis.conf配置文件即可。

    简单测试

root@redis#redis-cliredis 127.0.0.1:6379> set redis testOKredis 127.0.0.1:6379> get redis"test"redis 127.0.0.1:6379>
    redis.conf详解
#是否以后台进程运行,默认是no改为yesdaemonize yes#如果以后台进程运行,需要指定一个pid文件pidfile /var/run/redis.pid#服务监听端口port 6379#默认是注释掉的,监听所有端口,修改bind 192.168.1.1#客户端连接空闲多少秒后断开连接,0表示禁用该功能timeout 0#日志级别,有debug、notice、waring、verbose等模式loglevel verbose#日志记录方式,如果以后台进程运行,日志输出至/dev/nulllogfile stdout#是否把日志记录进syslogsyslog-enabled no#指定syslog标记,默认注释syslog-ident redis#指定记录进syslog的级别,默认注释syslog-facility local0#设置数据库的数量,默认为0databases 16############ SNAPSHOTTING  #############在多长时间内有多少次更新操作就把数据保存到硬盘#save 
可以有多条规则save 900 1save 300 10save 60 10000#当dump数据至.rdb时是否开启LZF压缩,为了节省cpu可以关闭,默认开启。rdbcompression yes#指定本地数据库文件名dbfilename dump.rdb#本地数据库存放路径dir /opt############ REPLICATION ###############本机为从服务时设置主的ip和端口#slaveof
#当主使用requirepass设置了密码时,从连接主需要密码#masterauth
#当从失去到主的连接,从的响应可以有两种行为,设置为yes时仍然响应客户端请求,#设置为no时,给客户端响应error syncslave-serve-stale-data yes#从每隔多长时间ping一次主,单位为秒#repl-ping-slave-period 10#Bulk transfer I/O timeout或者主的data/ping响应超时#repl-timeout 60################ SECURITY ################客户端在执行命令前需要经过密码验证requirepass passwd################ LIMITS #################允许客户端同时连接的最大链接数,默认没有限制,0表示没限制,当达到最大限制后#如果有新的连接过来,则会返回max number of clients reachedmaxclients 128#设置redis可以使用的最大内存,当达到限制后redis会根据策略maxmemmory-policy移除相关key,如果根据策略设置不能移除相关key,redis返回一个错误。maxmemory 1G#当达到最大使用内存后,redis在移除key时使用的策略。#volatile-lru -> remove the key with an expire set using an LRU algorithm#allkeys-lru -> remove any key accordingly to the LRU algorithm#volatile-random -> remove a random key with an expire set#allkeys->random -> remove a random key, any key#volatile-ttl -> remove the key with the nearest expire time (minor TTL)#noeviction -> don't expire at all, just return an error on write operationsmaxmemory-policy volatile-lru################ APPEND ONLY MODE ##########是否在每次更新操作后把数据立即更新进磁盘中,开启后redis会把每个写操作追加进appendonly.aof文件中,这个紧急在开启redis服务时被加载appendonly no#指定更新日志文件名appendfilename appendonly.aof#指定更新日志条件,调用系统的fsync()把数据写入磁盘中,有三种模式:#no 等待操作系统本身自己同步buffer数据,快#always 每次更新log后同步数据,慢但安全#everysec 每秒同步一次,折中做法appendfsync everysec#no-appendfsync-on-rewrite no#自动重写aof文件,0表示禁用此功能auto-aof-rewrite-percentage 100#定义在重写aof文件前,aof文件的最小值auto-aof-rewrite-min-size 64mb################### SLOW LOG ###############慢查询记录,值记录命令操作时间,不包括同客户端连接之类的I/O操作,记录操作时间大于N微秒的,如果设置为负数,则禁用此功能slowlog-log-slower-than 10000#设置慢查询日志长度,默认是么有限制的,但是它会占用内存,所以最好限制一下slowlog-max-len 128############## VIRTUAL MEMORY #############vm机制在redis2.4中强烈不建议使用,#是否开启vm机制vm-enabled no#虚拟内存文件存放路径,多个redis进程不能共享同一个文件vm-swap-file /tmp/redis.swap#将所有大于vm-max-memory的数据存入虚拟内存,0表示所有数据都存储在虚拟内存vm-max-memory 0#swap文件被分割成pages,对象可以存储在多个pages中,但是pages不能被多个对象共享,所以page大小定义得合适,单位bytesvm-page-size 32#swap文件中的内存页数,在磁盘上的每8 page会消耗1 byte,swap文件的大小是vm-page-size * vm-pagesvm-pages 134217728#在同时读写swap文件的进程数vm-max-threads 4############### ADVANCED CONFIG ##########当hash中包含超过指定元素个数且最大的元素没有超过临界值,hash将以特殊的编码方式来存储hash-max-zipmap-entries 512#hash中一个元素的最大值hash-max-zipmap-value 64#同hashlist-max-ziplist-entries 512list-max-ziplist-value 64#同hashset-max-intset-entries 512#同hash setzset-max-ziplist-entries 128zset-max-ziplist-value 64activerehashing yes################# INCLUDES #############可以包含其他配置文件#include /path/to/local.conf#include /path/to/other.conf
    安装phpredis

    下载phpredis扩展

git clone https://github.com/nicolasff/phpredis.git
    安装
cd phpredisphpize./configuremakemake install
    redis.so 默认被安装在源码的modules目录,拷贝redis.so到适当的位置,debian6中是/usr/lib/php5/20090626/

    安装完毕后,默认是不会开启phpredis模块的,还需要手动开启,在/etc/php5/conf.d目录下建立redis.ini文件,内容为:extension=redis.so

    重启apache,编写info()php文件,会看到redis信息,php -m 也可以看到。

    安装完毕后,就该实战了,希望我的项目可以顺利完成。

 

转载于:https://my.oschina.net/guol/blog/73541

你可能感兴趣的文章
标记区域 Region
查看>>
使用VS2010编译64的Geos库
查看>>
[Android疑难杂症]动态设置TextView的width不起作用
查看>>
HDU-2570-迷瘴
查看>>
python独立环境——virtualenv
查看>>
微信支付 支付成功后不跳转 ecshop微信支付 如下操作即可
查看>>
二十七、单张图片上传预览
查看>>
SilverLight 条码 扫描枪 MVVM(转载)
查看>>
Rotate Image
查看>>
selenium+python自动化测试系列(二):AutoIt工具实现本地文件上传
查看>>
大数据Python学习大纲
查看>>
jmeter 使用命令行执行
查看>>
高效程序员的45个习惯の欲速则不达
查看>>
原生JS封装运动框架。
查看>>
HT for Web 中Painter的介绍及用法
查看>>
股指期货模拟系统
查看>>
基于Spark的电影推荐系统(电影网站)
查看>>
【HNOI 2016】序列
查看>>
PowerShell定时记录操作系统行为
查看>>
Angular2之路由学习笔记
查看>>