关闭

Redis的安装与使用

802人阅读 评论(0) 收藏 举报
分类:
--直接到官网下载
http://download.redis.io/releases/redis-3.0.2.tar.gz


(1)基础安装
--下载后解压
/home/www/redis-3.0.2


--安装
make


报错:
error: jemalloc/jemalloc.h: No such file or directory


--解决
make MALLOC=libc
原因:jemalloc是默认的分配器,系统没有jemalloc只有libc


再次执行make即可安装完成!


(2)多端口多实例安装(可参考http://blog.csdn.net/xu470438000/article/details/42971091文章,涉及到集群)
在/home/www/redis-3.0.2建立目录cluster
mkdir -p /home/www/redis-3.0.2/cluster


--在该目录下建立三个文件夹
mkdir 6379
mkdir 6380
mkdir 6381


--把redis.conf文件拷贝到6379下:
cp /home/www/redis-3.0.2/redis.conf /home/www/redis-3.0.2/cluster/6379


--修改配置(目前只修改前两项也可以)
pidfile /var/run/redis-6379.pid #当运行多个redis要指定不同PID
port 6379  #端口号
daemonize yes #是否以守护进程启动
cluster-enabled yes #开启集群模式
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes
logfile /var/log/redis/redis-6379.log #配置日志文件位置




--同理把redis.conf复制到6380、6381下修改端口
cp /home/www/redis-3.0.2/cluster/6379/redis.conf /home/www/redis-3.0.2/cluster/6380/
cp /home/www/redis-3.0.2/cluster/6379/redis.conf /home/www/redis-3.0.2/cluster/6381/




--启动服务
/home/www/redis-3.0.2/src/redis-server /home/www/redis-3.0.2/cluster/6379/redis.conf
/home/www/redis-3.0.2/src/redis-server /home/www/redis-3.0.2/cluster/6380/redis.conf
/home/www/redis-3.0.2/src/redis-server /home/www/redis-3.0.2/cluster/6381/redis.conf


--查看端口
ps -ef|grep redis


--连接6380库(命令行)
/home/www/redis-3.0.2/src/redis-cli -h 192.168.5.128 -p 6380


启动后根据conf配置会创建/var/run/redis-6379.pid进程(在redis.conf中配置)


--关闭某个端口
/home/www/redis-3.0.2/src/redis-cli -p 6379 shutdown


--批量模糊删除键
 redis-cli -p 6381 KEYS "t_hash:*" | xargs redis-cli -p 6381 del


至此多端口已安装完成!


(3)启动脚本
#!/bin/sh


PATH=/usr/local/bin:/sbin:/usr/bin:/bin
REDISPORT=6379 #实际环境而定
EXEC=/home/www/redis-3.0.2/src/redis-server #实际环境而定
REDIS_CLI=/home/www/redis-3.0.2/src/redis-cli #实际环境而定
PIDFILE=/var/run/redis-6379.pid #实际环境而定
CONF="/home/www/redis-3.0.2/cluster/6379/redis.conf" #实际环境而定


case "$1" in
        start)
                if [ -f $PIDFILE ]
                then
                        echo "$PIDFILE exists, process is already running or crashed."
                else
                        echo "Starting Redis server..."
                        $EXEC $CONF
                fi
                if [ "$?"="0" ]
                then
                        echo "Redis is running..."
                fi
                ;;
        stop)
                if [ ! -f $PIDFILE ]
                then
                        echo "$PIDFILE exists, process is not running."
                else
                        PID=$(cat $PIDFILE)
                        echo "Stopping..."
                        $REDIS_CLI -p $REDISPORT SHUTDOWN
                        while [ -x $PIDFILE ]
                        do
                                echo "Waiting for Redis to shutdown..."
                                sleep 1
                        done
                        echo "Redis stopped"
                fi
                ;;
        restart|force-reload)
                ${0} stop
                ${0} start
                ;;
        *)
                echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&2
                exit 1
esac


--创建脚本
mkdir /etc/init.d/redis-6379
chmod +x /etc/init.d/redis-6379


--启动、停止
service redis-6379 start|stop


(5)开机加入自启动
chkconfig redis-6379 on
chkconfig redis-6380 on
chkconfig redis-6381 on


报错:service redis does not support chkconfig
解决方法:(必须把下面两行注释放在/etc/init.d/redis文件靠前的注释中)
# chkconfig:   2345 90 10
# description:  Redis is a persistent key-value database


上面的注释的意思是,redis服务必须在运行级2,3,4,5下被启动或关闭,启动的优先级是90,关闭的优先级是10。






(6)使用客户端
下载Redis DeskTop Manager客户端 Add New Connection
name:192.168.5.128--6380
host:192.168.5.128
port:6380
auth:(此处默认没有值,为安全起见会设置密码)
1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:44927次
    • 积分:1087
    • 等级:
    • 排名:千里之外
    • 原创:63篇
    • 转载:11篇
    • 译文:0篇
    • 评论:3条
    最新评论