• Redis安装与基本配置(转)


    一、下载与安装

    wget http://download.redis.io/releases/redis-3.0.0.tar.gz
    tar -zxvf redis-3.0.0.tar.gz -c /usr/local/
    cd /usr/local/redis-3.0.0
    make
    make install
    • 1
    • 2
    • 3
    • 4
    • 5

    二、系统参数调整

    vi /etc/sysctl.conf
    vm.overcommit_memory = 1    //允许分配所有的物理内存
    net.ipv4.tcp_max_syn_backlog = 2048   //未完成的TCP三次握手队列长度
    net.core.somaxconn = 1024    
    /sbin/sysctl –p
    
    //修改open file参数
    vi /etc/security/limits.conf
    *  soft   nofile    65535
    *  hard   nofile    65535
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    三、Redis持久化方式 
    1、RDB: 
    保存某个时间点上的数据集,服务器故障时丢失上次快照后的数据

    save 900 1      //900s内,如果有1个key发生变化,就进行一个快照
    save 300 10
    save 60 10000
    • 1
    • 2
    • 3

    2、AOF: 
    设置不同的fsync策略(no、everysec、always),最大程度保证数据安全

    appendonly no/yes    //关闭或开启
    appendfsync everysec  //每秒钟写一次aof文件 
    • 1
    • 2

    四、Redis主从复制配置

    vi redis.conf
    daemonize yes
    tcp-backlog 1024
    logfile "./redis.log"
    dir ./
    save ""
    appendonly yes
    appendfsync everysec
    masterauth "myredis"
    requirepass "myredis"
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    vi redis-slave.conf
    daemonize yes
    tcp-backlog 1024
    logfile "./redis.log"
    dir ./
    save ""
    appendonly yes
    appendfsync everysec
    masterauth "myredis"
    requirepass "myredis"
    slaveof 10.118.242.35 6379
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    五、启动Redis

    redis-server --help
    redis-server redis.conf // 默认端口号6379,可以使用--port参数指定
    redis-server redis-slave.conf --port 6378
    
    redis-cli -a myredis -p 6378
    ~:6378>set key value
    redis-cli -a myredis -p 6378 shutdown
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    六、Redis.conf主要配置参数

    daemonize:是否以后台daemon方式运行
    pidfile:pid文件位置
    port:监听的端口号
    timeout:请求超时时间
    loglevel:log信息级别
    logfile:log文件位置
    databases:开启数据库的数量
    save * *:保存快照的频率,第一个*表示多长时间,第三个*表示执行多少次写操作。在一定时间内执行一定数量的写操作时,自动保存快照。可设置多个条件。
    rdbcompression:是否使用压缩
    dbfilename:数据快照文件名(只是文件名,不包括目录)
    dir:数据快照的保存目录(这个是目录)
    appendonly:是否开启appendonlylog,开启的话每次写操作会记一条log,这会提高数据抗风险能力,但影响效率。
    appendfsync:appendonlylog如何同步到磁盘(三个选项,分别是每次写都强制调用fsync、每秒启用一次fsync、不调用fsync等待系统自己同步)
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    七、Redis启动脚本

    vim /etc/init.d/redis
    #!/bin/bash 
    # 
    # Init file for redis 
    # 
    # chkconfig: - 80 12 
    # description: redis daemon 
    # 
    # processname: redis 
    # config: /etc/redis.conf 
    # pidfile: /var/run/redis.pid 
    source /etc/init.d/functions 
    #BIN="/usr/local/bin" 
    BIN="/usr/local/bin" 
    CONFIG="/etc/redis.conf" 
    PIDFILE="/var/run/redis.pid" 
    ### Read configuration 
    [ -r "$SYSCONFIG" ] && source "$SYSCONFIG" 
    RETVAL=0 
    prog="redis-server" 
    desc="Redis Server" 
    start() { 
            if [ -e $PIDFILE ];then 
                 echo "$desc already running...." 
                 exit 1 
            fi 
            echo -n $"Starting $desc: " 
            daemon $BIN/$prog $CONFIG 
            RETVAL=$? 
            echo 
            [ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog 
            return $RETVAL 
    } 
    stop() { 
            echo -n $"Stop $desc: " 
            killproc $prog 
            RETVAL=$? 
            echo 
            [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$prog $PIDFILE 
            return $RETVAL 
    } 
    restart() { 
            stop 
            start 
    } 
    case "$1" in 
      start) 
            start 
            ;; 
      stop) 
            stop 
            ;; 
      restart) 
            restart 
            ;; 
      condrestart) 
            [ -e /var/lock/subsys/$prog ] && restart 
            RETVAL=$? 
            ;; 
      status) 
            status $prog 
            RETVAL=$? 
            ;; 
       *) 
            echo $"Usage: $0 {start|stop|restart|condrestart|status}" 
            RETVAL=1 
    esac 
    exit $RETVAL
    
    
    # chmod 755 /etc/init.d/redis 
    # chkconfig --add redis 
    # chkconfig --level 345 redis on 
    # chkconfig --list redis
    http://blog.csdn.net/jason5186/article/details/48269089
  • 相关阅读:
    day2 python基础
    day2 jmeter和charles
    nmon参数详解
    根据路径遍历该路径下的文件夹和文件并以列表形式显示出来、文件(夹)的复制
    GridView创建菜单栏
    GridView(网格视图)+MotionEvent(触控事件)实现可以拖动排序的网格图
    android 下拉刷新框架PullToRefreshScrollView(com.handmark.pulltorefresh)
    android轮播图的实现原理
    自定义进度条渐变色View
    android显示通知栏Notification以及自定义Notification的View
  • 原文地址:https://www.cnblogs.com/softidea/p/5078407.html
Copyright © 2020-2023  润新知