博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Redis
阅读量:2400 次
发布时间:2019-05-10

本文共 3101 字,大约阅读时间需要 10 分钟。

安装

下载好redis-2.8.12.tar.gz放在/usr/local下

tar zxvf redis-2.8.12.tar.gz 解压缩cd /usr/local/redis-2.8.12makecd srcmake install

默认的配置文件redis.conf,拷贝到固定的目录下

mkdis /etc/redis       系统配置存放于/etc下cp redis.conf /etc/redis

运行

redis-server /etc/redis/redis.conf   启动服务端

测试

  通过客户端命令redis-cli访问Redis

 # redis-cli      redis> set name zlex      OK      redis> get name       "zlex"

关闭

    redis-cli shutdown

调优

1./etc/sysctl.conf   

需要修改/etc/sysctl.conf     末尾追加vm.overcommit_memory = 1     然后执行sysctl vm.overcommit_memory=1

2./proc/sys/vm/overcommit_memory

 内存分配策略文件/proc/sys/vm/overcommit_memory

  1. 表示内核将检查是否有足够的可用内存供应用进程使用;如果有足够的可用内存,内存申请允许;否则,内存申请失败,并把错误返回给应用进程。

  2. 表示内核允许分配所有的物理内存,而不管当前的内存状态如何。

  3. 表示内核允许分配超过所有物理内存和交换空间总和的内存

  默认为0,如果内存情况比较紧张的话,设为1

3.redis.conf  

daemonize yes #守护进程模式       save 60 1000 #当时间间隔超过60秒,或存储超过1000条记录时,进行持久化。       maxmemory 256mb #分配256MB内存

 PS:切记,一定要设定maxmemmory,且配置大小要小于物理内存,留有足够的内存供系统使用。

   

集群配置

配置Mater-Slave,只需要在Slave上配置Master节点IP Port

例如Master IP为192.168.30.234 端口为6379,配置slave的redis.conf:

slaveof 192.168.30.234

PS:为了两个Redis Server可以互访,需要注释掉bind 127.0.0.1

依次启动Master Slave

可作简单测试,Master写,Slave读

主从备份

在从服务器上执行下列命令:

     #备份     redis-cli save     #关闭     redis-cli shutdown

然后,拷贝数据目录下的rdb文件。

系统服务

习惯了通过service启动一切服务,新建文件并赋予权限: 

touch /etc/init.d/redis-serverchmod +x /etc/init.d/redis-server

编辑/etc/init.d/redis-server,键入如下内容

#!/bin/bash  #  # redis    Startup script for redis processes  #  # author: snowolf  #  # processname: redis    redis_path="/usr/local/bin/redis-server"  redis_conf="/etc/redis/redis.conf"  redis_pid="/var/run/redis.pid"    # Source function library.  . /etc/rc.d/init.d/functions    [ -x $redis_path ] || exit 0    RETVAL=0  prog="redis"      # Start daemons.  start() {      if [ -e $redis_pid -a ! -z $redis_pid ];then          echo $prog" already running...."          exit 1      fi        echo -n $"Starting $prog "      # Single instance for all caches      $redis_path $redis_conf      RETVAL=$?      [ $RETVAL -eq 0 ] && {          touch /var/lock/subsys/$prog          success $"$prog"      }      echo      return $RETVAL  }      # Stop daemons.  stop() {      echo -n $"Stopping $prog "      killproc -d 10 $redis_path      echo      [ $RETVAL = 0 ] && rm -f $redis_pid /var/lock/subsys/$prog        RETVAL=$?      return $RETVAL  }      # See how we were called.  case "$1" in          start)              start              ;;          stop)              stop              ;;          status)              status $prog              RETVAL=$?              ;;          restart)              stop              start              ;;          condrestart)              if test "x`pidof redis`" != x; then                  stop                  start              fi              ;;          *)              echo $"Usage: $0 {start|stop|status|restart|condrestart}"              exit 1  esac  exit $RETVAL

# service redis-server restartStopping redis                                             [失败]Starting redis                                             [确定]# service redis-server status redis (pid  14965) 正在运行...

很方便!

 

转载于:https://my.oschina.net/zhupanxin/blog/284797

你可能感兴趣的文章
端口大全(转)
查看>>
Java Servlet和JSP教程(10)(转)
查看>>
怎样制作恢复光盘(转)
查看>>
广受青睐的题材---蒸汽朋克[Steampunk](转)
查看>>
怎样在游戏设计制作中实现脚本控制(转)
查看>>
广州一银行偷逃个税300万职员人均补税近万元
查看>>
山西晋中6辆警车围堵太原许西收费站
查看>>
Linux下的压缩文件剖析(转)
查看>>
基础网络命令(转)
查看>>
广域网(WAN)简介(转)
查看>>
DDN综述-1(转)
查看>>
详细定义嵌入式系统(转)
查看>>
linux入门教程(3)(转)
查看>>
动手制作自己的启动盘(转)
查看>>
在Linux中做系统引导盘(转)
查看>>
2.6内核的安装(转)
查看>>
多用户,多语言设置(转)
查看>>
断电后的系统修复(转)
查看>>
Squid优化完全手册(1)(转)
查看>>
全都是外国人写的防火墙脚本,我也来写一个,希望大家跟我一块做好(转)
查看>>