redis安装配置
2013-08-27 14:32 AgileEAP 阅读(223) 评论(0) 收藏 举报转:http://blog.chinaunix.net/uid-26681030-id-3758013.html
单节点安装
1. 下载安装包
wget http://redis.googlecode.com/files/redis-2.2.15.tar.gz
tar zxvf redis-2.2.15.tar.gz
cd redis-2.2.15
make
mkdir /usr/local/redis
mkdir -p /etc/redis/
mkdir -p /data/redis/{run,db}
cp redis.conf /etc/redis/
cd src/
cp redis-benchmark redis-check-aof redis-check-dump redis-cli redis-server mkreleasehdr.sh /usr/local/redis/
2.修改配置文件
daemonize yes # By default Redis does not run as a daemon. Use 'yes' if you need it.
pidfile /data/redis/run/redis.pid
dir /data/redis/db
3. 创建服务脚本
cat /etc/init.d/redisd
#!/bin/bash
#bashname redisd
#Author Like_snow
#Version 1.0
#Date 2013/05/03
Usage(){
cat << EOF
* * * * * * * * *
*Incorrect parameter! *
*/etc/init.d/redisd start(stop) *
* * * * * * * * *
EOF
exit 1
}
[ $# != 1 ] && Usage
case $1 in
start)
/usr/local/redis/redis-server /etc/redis/redis.conf &
[ "$?" == "0" ] && echo "Start success..." && exit 0
exit 1
;;
stop)
kill `cat /data/redis/run/redis.pid`
[ "$?" == "0" ] && echo "Stop success..." && exit 0
exit 1
;;
*)
Usage
;;
esac
注意:
给文件添加执行权限:
比如说你是给用户加x,使用chmod u+x file_name
组加X,使用chmod g+x file_name
trenhui@ubuntu:~$ ll /etc/init.d/ |grep redisd
-rw-r--r-- 1 root root 541 Aug 26 20:31 redisd
trenhui@ubuntu:~$ chmod u+x /etc/init.d/redisd
chmod: changing permissions of ‘/etc/init.d/redisd’: Operation not permitted
trenhui@ubuntu:~$ sudo chmod u+x /etc/init.d/redisd
trenhui@ubuntu:~$ ll /etc/init.d/ |grep redisd
-rwxr--r-- 1 root root 541 Aug 26 20:31 redisd
4. 服务启动开关
/etc/init.d/redisd start
/etc/init.d/redisd stop
5. 服务验证
[root@localhost redis]# ./redis-cli
redis 127.0.0.1:6379> set work "hard"
OK
redis 127.0.0.1:6379> get work
"hard"
redis 127.0.0.1:6379>
二.Redis Master/Slave 主从集群配置
实验环境:
Centos 6.2 x86 Final(一台)
实验目的:
一主两从的Redis配置
127.0.0.1:6379 #Master
127.0.0.1:63791 #Slave1
127.0.0.1:63792 #Slave2
1. 使用上面成功创建的Master,直接复制Slave
cp -a redis/ redis-slave1
cp -a redis/ redis-slave2
2. 创建slave1的配置文件
cp -a /etc/redis/ /etc/redis-slave1
mkdir -p /data/redis-slave1/{run,db}
--vi /etc/redis-slave1/redis.conf--
pidfile /data/redis-slave1/run/redis.pid
port 63791
dir /data/redis-slave1/db
slaveof 127.0.0.1 6379
3. 创建slave2的配置文件
cp -a /etc/redis/ /etc/redis-slave2
mkdir -p /data/redis-slave2/{run,db}
--vi /etc/redis-slave2/redis.conf--
pidfile /data/redis-slave2/run/redis.pid
port 63792
dir /data/redis-slave2/db
slaveof 127.0.0.1 6379
4. 修改redisd脚本
cat /etc/redisd
#!/bin/bash
#bashname redisd
#Author Like_snow
#Version 2.0
#Date 2013/05/03
Usage(){
cat << EOF
* * * * * * * * * * *
*Incorrect parameter! *
*/etc/init.d/redisd start(stop) SlaveID[1 or 2 .. ] *
* * * * * * * * * * *
EOF
exit 1
}
[ $# -gt 2 ] && Usage
redis=${2:-redis}
if grep `echo $redis` /etc/init.d/redis-list || test "$redis" == "redis"
then
test "$redis" != "redis" && redis=redis-slave$redis
else
Usage
fi
case $1 in
start)
/usr/local/$redis/redis-server /etc/$redis/redis.conf &
[ "$?" == "0" ] && echo "Start $redis success..." && exit 0
exit 1
;;
stop)
kill `cat /data/$redis/run/redis.pid`
[ "$?" == "0" ] && echo "Stop $redis success..." && exit 0
exit 1
;;
*)
Usage
;;
Esac
5. 启动服务
[root@localhost etc]# netstat -tlnp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:6379 0.0.0.0:* LISTEN 2547/redis-server
tcp 0 0 0.0.0.0:63791 0.0.0.0:* LISTEN 2553/redis-server
tcp 0 0 0.0.0.0:63792 0.0.0.0:* LISTEN 2560/redis-server
6. 验证M/S 是否成功
[root@localhost redis]# cd /usr/local/redis
[root@localhost redis]# ./redis-cli
redis 127.0.0.1:6379> set Master "Success.."
OK
redis 127.0.0.1:6379> get Master
"Success.."
redis 127.0.0.1:6379> quit
[root@localhost redis]# cd /usr/local/redis-slave1/
[root@localhost redis-slave1]# ./redis-cli
redis 127.0.0.1:6379> get Master
"Success.."
redis 127.0.0.1:6379> quit
[root@localhost redis-slave1]# cd /usr/local/redis-slave2/
[root@localhost redis-slave2]# ./redis-cli
redis 127.0.0.1:6379> get Master
"Success.."
redis 127.0.0.1:6379> quit
[root@localhost redis-slave2]#
出现以上结果这名一主两从的结构正常运行.
三.安装PHP redis扩展
https://github.com/nicolasff/phpredis/archive/master.zip
unzip master
cd phpredis-master
phpize
./configure
make && make install
修改php.ini 文件
=========================
extension=redis.so
=========================
参考链接:
浙公网安备 33010602011771号