• Redis学习笔记(1)- CentOS 6.4 安装Redis


    Redis学习笔记(1)- CentOS 6.4 安装Redis
    2013.10.13
     
     
    学习环境
    vm 10.1 + 默认、新装的干净 CentOS 6.4  64BIT系统
     
     
    准备
    1. redis 2.6.16版
     
     
    安装计划及具体步骤笔记
     
    一、计划
    1. 下载redis稳定版本
    2. 解压并安装redis,并放入合理的目录中
    3. 手工启动redis,测试redis是否运行正常
    4. 将redis加入开机自启动序列
     
    二、具体步骤笔记
     
    1. 默认安装的CentOS系统自带wget小工具,所以我们利用它来在linux系统里下载redis
    (1)获取响应权限:su root
    (2)规划好下载的目录:mkdir /usr/local/soft/
    (3)进入新建的目录,准备下载:cd /usr/local/soft/
    (4)下载redis最新稳定版:wget http://download.redis.io/releases/redis-2.6.16.tar.gz
     
    2.  解压并安装redis,并放入合理的目录中
    (1)解压tar包:tar zxvf redis-2.6.16.tar.gz
    (2)进入解压后出现的新目录:cd redis-2.6.16
    (3)编译源码:make
    (4)校验编译是否正确:make test
            此时会有错误提示:You need tcl 8.5 or newer in order to run the Redis test
    (5)根据以上错误提示,安装ActiveTcl 8.5 以上版本(我选的是最新的8.6版本,约20多MB,URL:http://downloads.activestate.com/ActiveTcl/releases/
     
    3. 手工启动redis,测试redis是否运行正常
    (1)在当前redis目录中输入命令启动Redis:src/redis-server
    (2)检查进程是否有Redis了:ps aux | grep redis,可以看见进程列表中有一个叫“src/redis-server”的进程了
    (3)启动redis自带的客户端,进行测试:
            # src/redis-cli -- 启动客户端并连接本地Redis
            # set foo bar -- 提示 “ok”说明设置键值正常。
            # get foo -- 能够提示返回正确的“bar”,说明运行正常。
            # quit -- 退出客户端
     
    4. 将Redis加入开机自启动序列
    (1)redis.conf 配置文件里面的daemonize no 改成 daemonize yes (后加上的步骤,否则会导致系统启动时进入不了x windows界面)
    (2)测试通过的自启动脚本:
    ###########################
        PATH=/usr/local/soft/redis-2.6.16:/usr/local/bin:/sbin:/usr/bin:/bin
     
        REDISPORT=6379
        EXEC=/usr/local/soft/redis-2.6.16/src/redis-server
        REDIS_CLI=/usr/local/soft/redis-2.6.16/src/redis-cli
     
        PIDFILE=/var/run/redis.pid
        CONF="/usr/local/soft/redis-2.6.16/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 does not exist, process is not running"
                else
                        PID=$(cat $PIDFILE)
                        echo "Redis is 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
    ##############################
            把以上脚本保存成/etc/rc.d/init.d/redis文件
     
    (3)编辑/etc/rc.local文件,在最后一行加上bash /etc/init.d/redis start 即可
     
     
    三、扩展知识
    1. VM公司从2010年开始赞助Redis项目
    2. CentOS 按照默认环境安装时,未安装 ActiveTcl  8.5以上版本,所以在验证Redis是否编译正确时需要自行安装。
    3. yum list xxxx   可以检测并列出资源库中是否有提供可安装的xxxx的安装包及版本号
     
     
    四、待解决的问题
    1. 在将Redis配置成自启动脚本后,突然发现CentOS进入不了图形界面了,最后加载的进度条就停留在最右边。
    此时用SSH客户端连接CentOS却一切正常,非常奇怪,目前未找到原因和解决办法。
     
     解决办法:当天晚上经仔细回忆操作过程,终于发现该问题出现于何处:redis.conf 配置文件里面的daemonize no 没有改成 daemonize yes。修改成 yes后,问题解决。
     
     
     
     
     
     
  • 相关阅读:
    比赛分组 功能描述:两个乒乓球队进行比赛,各出三人。 甲队为A、B、C三人,乙队为X、Y、Z 三人,已经抽签决定了比赛名单。 已知A 不和X 比,C 不和X、Z 比,请问比赛名单是什么。(用到了三重循环)
    输入一个五位正整数,使用数组判断它是不是回文数(例如12321是回文)
    删除数组元素 功能描述:有一个有序整数数组,要求输入一个数字, 在数组中查找是否有这个数,如果有,将该数从数组中删除, 要求删除后的数组仍然保持有序;
    将一个给定的整型数组转置输出(二维数组)
    有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
    使用二重循环和break语句,找出2~100内所有的质数
    使用多重循环打印6阶杨辉三角
    使用Arrays.copyOf()数组合并并排序
    设置Android Studio启动时可选最近打开过的工程
    如何将Eclipse中的项目迁移到Android Studio 中
  • 原文地址:https://www.cnblogs.com/changsir/p/3366656.html
Copyright © 2020-2023  润新知