首页 > 代码库 > redis--------基于centos6源码安装

redis--------基于centos6源码安装

  1. 背景

        前一章介绍了memecached安装,此次介绍NoSQL另一款明星产品----->redis.

          许多Web 应用程序都将数据保存到RDBMS中,应用服务器从中读取数据并在浏览器中显示。但随着数据量的增大,访问的集中,就会出现REBMS的负担加重,数据库响应恶化,网站显示延迟等重大影响。Memcached是高性能的分布式内存缓存服务器。一般的使用目的是通过缓存数据库查询结果,减少数据库的访问次数,以提高动态Web 应用的速度、提高扩展性. 

  2. redis比memcached优势

    1. 丰富的数据类型: redis支持二进制的string list hashe set zset五大基础数据类型存储.

    2. 原子性:redis的所有操作都是原子性的,同时redis还支持对几个操作全并后的原子性执行.

    3. 消息订阅:  redis支持publish/subscribe。

    4. 持久化存储数据: redis支持Aof与RDB两种数据持久化支持.


  3. 环境

技术分享

4. 安装(/usr/local/src)

  • 下载: wget  http://download.redis.io/releases/redis-3.2.8.tar.gz

  • 解压: tar zxvf redis-3.2.8.tar.gz

  • 进入目录: cd redis-3.2.8

  • 编译并指定安装目录: make PREFIX=/usr/local/redis-3.2.8 install

  • 创建软链接: ln -s /usr/local/redis-3.2.8 /usr/local/redis


5. 配置文件(当前还在redis源码目录[/usr/local/src/redis-3.2.8]内)

    1. cp redis.conf /etc/redis.conf

    2. 编辑/etc/redis.conf

    • daemonize no  ==> daemonize yes    (设置redis为后台daemon进程)


6. 创建redis用户

 [root@redis-server ~]# useradd -r -s /sbin/nologin -M redis


7. 创建启动脚本/etc/init.d/redis

#!/bin/sh
#
# redis        init file for starting up the redis daemon
#
# chkconfig:   - 20 80
# description: Starts and stops the redis daemon.

# Source function library.
#!/bin/sh
#
# redis        init file for starting up the redis daemon
#
# chkconfig:   - 20 80
# description: Starts and stops the redis daemon.

# Source function library.
. /etc/rc.d/init.d/functions

name="redis-server"
exec="/usr/local/redis/bin/$name"
pidfile="/var/run/redis/redis.pid"
REDIS_CONFIG="/etc/redis.conf"

[ -e /etc/sysconfig/redis ] && . /etc/sysconfig/redis

lockfile=/var/lock/subsys/redis

start() {
    [ -f $REDIS_CONFIG ] || exit 6
    [ -x $exec ] || exit 5
    echo -n $"Starting $name: "
    daemon --user ${REDIS_USER-redis} "$exec $REDIS_CONFIG"
    retval=$?
    echo
    [ $retval -eq 0 ] && touch $lockfile
    return $retval
}

stop() {
    echo -n $"Stopping $name: "
    killproc -p $pidfile $name
    retval=$?
    echo
    [ $retval -eq 0 ] && rm -f $lockfile
    return $retval
}

restart() {
    stop
    start
}

reload() {
    false
}

rh_status() {
    status -p $pidfile $name
}

rh_status_q() {
    rh_status >/dev/null 2>&1
}


case "$1" in
    start)
        rh_status_q && exit 0
        $1
        ;;
    stop)
        rh_status_q || exit 0
        $1
        ;;
    restart)
        $1
        ;;
    reload)
        rh_status_q || exit 7
        $1
        ;;
    force-reload)
        force_reload
        ;;
    status)
        rh_status
        ;;
    condrestart|try-restart)
        rh_status_q || exit 0
        restart
        ;;
    *)
        echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart}"
        exit 2
esac
exit $?


8. 添加进service服务管理并设置开机启动   

[root@redis-server ~]# chkconfig --add redis
[root@redis-server ~]# chkconfig redis on

9. redis服务测试

service redis start

技术分享


10. 连接测试(通过自带redis-cli命令连接测试)

[root@redis-server ~]# /usr/local/redis/bin/redis-cli -h 127.0.0.1 -p 6379

技术分享

连接测试成功


11.  总结


以需求驱动技术,技术本身没有优略之分,只有业务之分。


本文出自 “sea” 博客,请务必保留此出处http://lisea.blog.51cto.com/5491873/1907471

redis--------基于centos6源码安装