zoukankan      html  css  js  c++  java
  • Redis服务搭建及操作

                                       Redis服务搭建及操作
    Redis 是一个高性能的key-value数据库。 redis的出现,很大程度补偿了memcached这类keyvalue存储的不足,在部分场合可以对关系数据库起到很好的补充作用。它提供了Python,Ruby,Erlang,PHP客户端,使用很方便。  
    以下是安装测试步骤:  
    1,redis安装:  
    [html] view plaincopy  
    [root@localhost ~]# cd /usr/local/src/    
    [root@localhost src]# wget http://redis.googlecode.com/files/redis-2.2.12.tar.gz    
    [root@localhost src]# tar zxf redis-2.2.12.tar.gz    
    [root@localhost src]# cd redis-2.2.12    
    [root@localhost redis-2.2.12]# make PREFIX=/usr/local/redis install    
    2,配置redis:  
    [html] view plaincopy  
    [root@localhost redis-2.2.12]# mkdir -p /usr/local/redis/etc    
    [root@localhost redis-2.2.12]# mkdir -p /usr/local/redis/var    
    [root@localhost redis-2.2.12]# cd /usr/local/redis/etc    
    [root@localhost etc]# vi redis.conf(重新建立conf文件,需要复制下面的配置)    
    [html] view plaincopy  
    daemonize yes    
    pidfile /usr/local/redis/redis.pid    
    port 6379    
    bind 127.0.0.1    
    timeout 300    
    loglevel verbose    
    logfile stdout    
    databases 16    
    save 900 1    
    save 300 10    
    save 60 10000    
    rdbcompression yes    
    dbfilename dump.rdb    
    dir /usr/local/redis/var/    
    slave-serve-stale-data yes    
    maxclients 12800    
    appendonly no    
    appendfsync everysec    
    no-appendfsync-on-rewrite no    
    slowlog-log-slower-than 10000    
    slowlog-max-len 1024    
    vm-enabled no    
    vm-swap-file /tmp/redis.swap    
    vm-max-memory 0    
    vm-page-size 32    
    vm-pages 134217728    
    vm-max-threads 4    
    hash-max-zipmap-entries 512    
    hash-max-zipmap-value 64    
    list-max-ziplist-entries 512    
    list-max-ziplist-value 64    
    set-max-intset-entries 512    
    activerehashing yes    
    3,启动关闭redis:  
    [html] view plaincopy  
    [root@localhost ~]# /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf    
    [root@localhost ~]# ps -ef|grep redis    
    root 3891 1 0 18:11 ?  00:00:00 /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf    
    [root@localhost redis-2.2.12]# /usr/local/redis/bin/redis-cli -h 127.0.0.1 -p 6379 shutdown    
    如果配置使用默认的127.0.0.1和6379端口,可执行命令时可省略以上参数。  
    4,测试redis:  
    [html] view plaincopy  
    [root@localhost ~]# telnet 127.0.0.1 6379    
    Trying 127.0.0.1...    
    Connected to localhost (127.0.0.1).    
    Escape character is '^]'.    
    ^]    
    telnet> quit    
    Connection closed.    
    5,/usr/local/redis/bin目录下执行文件功能说明:  
    redis-server:Redis服务器的daemon启动程序  
    redis-cli:Redis命令行操作工具。当然,你也可以用telnet根据其纯文本协议来操作  
    redis-benchmark:Redis性能测试工具,测试Redis在你的系统及你的配置下的读写性能  
    --------------------------满意的分割线-----------------------------------  
    实例:  
    1)登陆,输入数据:  
    [html] view plaincopy  
    [root@localhost ~]# /usr/local/redis/bin/redis-cli -h 127.0.0.1 -p 6379    
    redis 127.0.0.1:6379> set name csdn    
    OK    
    redis 127.0.0.1:6379> get name    
    "<span style="font-family: simsun; ">csdn</span>"    
    redis 127.0.0.1:6379> quit    
    2)查看redis统计信息:  
    [html] view plaincopy  
    [root@localhost ~]# /usr/local/redis/bin/redis-cli -h 127.0.0.1 -p 6379 info    
    3)测试性能:  
    向redis服务器发送10个请求,每个请求附带50个并发客户端,-n 接请求数,-c 接并发数  
    [html] view plaincopy  
    [root@localhost ~]# /usr/local/redis/bin/redis-benchmark -h 127.0.0.1 -p 6379 -n 10 -c 50

    自参文档
    redis源码安装:redis-3.2.9.tar.gz
    下载:wget http://source.goyun.org:8000/source/Redis/redis-3.2.9.tar.gz
    解压:tar -vxf redis-3.2.9.tar.gz
    编译安装:cd redis-3.2.9
              # make MALLOC=jemalloc
              #make PREFIX=/home/application/redis-3.2.9 install
              cd /home/application/
              #ln -s redis-3.2.9 /home/application/redis
        配置环境变量:
         #vim /etc/profile
         最后一行添加:export PATH=/home/application/redis/bin/:$PATH
         #./etc/profile
         # which redis-server
         /home/application/redis/bin/redis-server    表示生效
         规范配置文件;
         #mkdir /etc/redis
         cp /home/application/redis-3.2.9/redis.conf /etc/redis
         开机启动:
         redis-server /etc/redis/redis.conf &
         启动时发现有vm.overcommit_memory = 1(说明内存低) 后要将这条添加到vim /etc/sysctl.conf的配置文件里面
         或者直接执行sysctl vm.overcommit_memory=1  临时立即生效
         首先将redis关掉 :killall redis-server
         然后sysctl vm.overcommit_memory=1    当前生效
         这时重启:redis-server /etc/redis/redis.conf
         #lsof -i :6379 检查服务有没有起来
         redis的正确关闭方法:redis-cli shutdown

    redis启动服务及客户端测试命令
         客户端命令:redis-cli
         redis-cli -h 192.168.1.158 -p 6379
         也可以用telnet去连接
        
    Redis 3.2.9版本启动时出现警告的解决办法:
      错误类型:7283:M 12 Mar 12:13:33.749 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
         解决方法1: 临时设置生效: sysctl -w net.core.somaxconn = 1024
             方法2: 永久生效: 修改/etc/sysctl.conf文件,增加一行
             net.core.somaxconn= 1024
             然后执行命令
             sysctl -p

      错误类型2:WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
          解决方法1: 临时设置生效: sysctl -w vm.overcommit_memory = 1
              方法2: 永久生效: 修改/etc/sysctl.conf文件,增加一行
                vm.overcommit_memory = 1
                然后执行命令
                  sysctl -p
                  

  • 相关阅读:
    PHP5.4中新增的traits
    PHP各版本的区别
    冒泡排序原理
    服务器&linux
    PHP
    excel 导出
    try cache
    sql
    Linux下php安装Redis扩展
    Redis安装部署
  • 原文地址:https://www.cnblogs.com/bbs123-logs/p/7087689.html
Copyright © 2011-2022 走看看