redis编译安装

redis编译安装
==============================================================
一:安装

    官网下载地址:http://redis.io/download

    ~]# yum -y install gcc
    ~]# cd src
    ~]# make
        # make MALLOC=libc   解决部分错误使用。
    <!-- ~]# make install -->

    配置文件:源码根目录
    ~]# mkdir /etc/redis/
    ~]# cp redis.conf /etc/redis/

二:配置
    ~]# ls /usr/local/bin/
        redis-benchmark  redis-check-aof  redis-check-rdb  redis-cli  redis-sentinel  redis-server

pidfile /var/run/redis_6379.pid
redis-server

~]# vim /etc/redis/redis.conf
监听端口和地址
#bind 127.0.0.1

# yes 是在后台运行
# daemonize no
daemonize yes

# cluster-enabled yes
cluster-enabled yes

# cluster-config-file nodes-6379.conf
cluster-config-file nodes-6379.conf

# cluster-node-timeout 15000
cluster-node-timeout 15

启动服务:
~]#  redis-server /etc/redis/redis.conf


~]# redis-cli
cluster nodes  命令用于查看当前Redis节点所属的Redis集群中的所有节点,
cluster info    则用于查看当前Redis节点所属的Redis集群的整体状
cluster meet    将当前节点主动添加节点
cluster addslots
cluster delslots
cluster setslot
[root@localhost redis]# redis-cli
127.0.0.1:6379> cluster nodes
    5be8eec2cee607d14ee5cd6f24ee296365d49ec9 :6379 myself,master - 0 0 0 connected

127.0.0.1:6379> cluster info
    cluster_state:fail
    cluster_slots_assigned:0
    cluster_slots_ok:0
    cluster_slots_pfail:0
    cluster_slots_fail:0
    cluster_known_nodes:1
    cluster_size:0
    cluster_current_epoch:0
    cluster_my_epoch:0
    cluster_stats_messages_sent:0
    cluster_stats_messages_received:0

127.0.0.1:6379> cluster meet 172.18.21.61 6379
    OK

127.0.0.1:6379> cluster nodes
    bf030d5a9570b66c41a38bdfb89b36e6cf654e58 172.18.21.61:6379 master - 0 1466854370204 0 connected
    5be8eec2cee607d14ee5cd6f24ee296365d49ec9 172.18.21.60:6379 myself,master - 0 0 1 connected

[root@localhost redis]# cat /etc/redis/nodes-6379.conf
    bf030d5a9570b66c41a38bdfb89b36e6cf654e58 172.18.21.61:6379 master - 0 1466854584926 0 connected
    5be8eec2cee607d14ee5cd6f24ee296365d49ec9 172.18.21.60:6379 myself,master - 0 0 1 connected
    vars currentEpoch 1 lastVoteEpoch 0








http://blog.sina.com.cn/s/blog_48c95a190101dhe9.html

kill -9 `cat /var/run/redis_6379.pid`
启动
redis-server /etc/redis/redis.conf


#主服务器
redis-cli -p 6379 set hello world

#从服务器
redis-cli -p 6379 get hello
"world"

#主服务器
redis-cli -p 6379 set hello world2

#从服务器
redis-cli -p 6379 get hello
"world2"
redis-cli -p 6379 set hello world
(error) READONLY You can't




yum -y install ruby rubygems




pkgs.org
yum localinstall
backlog 等待队列

事务:
muti exec



jenkins 监控

@connection
auth
echo
ping
quit
select


glient
config
config resetstat
config set
config rewrite
dbsize


help info
info memory

lastsave
monitor

shutdown
slaveof
slowlog
sync
time

订阅与发布:
subscribe
subscribe news
publish news hello
psubscribe:模式订阅

持久化:
    rdb和aof
    rdb:snapshot,二进制格式,事先定制策略,周期性的保存至磁盘,数据文件默认为dump.rdb
            客户端可显示使用save或bgsave命令自动执行保存机制。
            save(同步):在主线程中保存快照,此时会阻塞所有客户端请求。
            bgsave(异步):

    aof:append only file:合并重写aof文件,
        记录每一次写操作至指定的文件尾部实现持久化。当redis重启时,可通过重新执行文件的命令在内存重建数据库,
        不会读取正在使用的aof文件,而通过将内存中的数据以命令的方式保存到临时文件中,完成之后替换原来的aof文件。

    bgsave bgrewriteaof 不会同时执行,
    恢复数据时优先使用aof

    复制:
        特点:
            一个master可以有多个slave
            支持链式复制
            master以非阻塞方式同步数据至slave



slaveof 172.18.21.60 6379 指明主库

列出所有key
keys *

config get slaveof



主服务器使用认证,从服务器要使用 masterauth password 才能正常进行主从复制。

    sentinel:用于管理多个redis服务器实现ha
        监控
        通知
        自动化故障迁移

        程序:
            redis-sentinel /path/to/file.conf
            redis-server /path/to/file.conf  --sentinal






/*
redis 使用
查看所有key
~]# keys *

切换数据库
~]#  select 1

删除当前数据库中的所有Key  
~]# flushdb  

删除所有数据库中的key  
~]# flushall  

删除某个key
~]# del key
*/









--------------------------------file start---------------------------------------------
#!/usr/bin/env bash
#
# redis start up the redis server daemon
#
# chkconfig: 345 99 99
# description: redis service in /etc/init.d/redis \
#             chkconfig --add redis or chkconfig --list redis \
#             service redis start  or  service redis stop
# processname: redis-server
# config: /etc/redis.conf

PATH=/usr/local/bin:/sbin:/usr/bin:/bin

REDISPORT=6379
EXEC=/usr/local/bin/redis-server
REDIS_CLI=/usr/local/bin/redis-cli

PIDFILE=/var/run/redis.pid
CONF="/etc/redis.conf"
#make sure some dir exist
if [ ! -d /var/lib/redis ] ;then
    mkdir -p /var/lib/redis
    mkdir -p /var/log/redis
fi

case "$1" in
    status)
        ps -A|grep redis
        ;;
    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 "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
--------------------------------file end---------------------------------------------
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值