zoukankan      html  css  js  c++  java
  • redis 常用命令

    1. 安装
      安装方法: https://blog.csdn.net/bigtree_3721/article/details/80886977
      yum -y install redis
      yum install ruby rubygems ruby-devel 
      gem install redis-dump -V
      vim /etc/redis.conf
      修改2个配置参数:
      requirepass Passwd
      bind 0.0.0.0
    2. 常用命令
      远程登录redis
      redis-cli -h host -p port -a "password"
      已使用库信息:redis-cli -a "password" INFO keyspace
      KEYS * 匹配数据库中所有 key (可使用正则匹配)
      redis-cli --bigkeys 查看key大小
      Client List 命令用于返回所有连接到服务器的客户端信息和统计数据
      SELECT <dbid> 命令在连接上指定数据库 id
      DBSIZE 命令获取key数量
      Flushall 命令用于清空整个 Redis 服务器的数据 (删除所有数据库的所有 key)
      Flushdb 命令用于清空当前数据库中的所有 key
      CONFIG GET * 获取所有配置项
      CONFIG GET databases 获取数据库的数量,总共16个库,默认数据库为 0
      CONFIG GET dir 指定本地数据库存放目录 
      info 命令获取 redis 服务器的统计信息
      SAVE 命令用于创建当前数据库的备份
      Monitor 命令用于实时打印出 Redis 服务器接收到的命令,调试用
      恢复数据:将备份文件 (dump.rdb) 移动到 redis 安装目录并启动服务即可
      Shutdown 命令停止redis
    3. 导入导出
      #导出,密码前面要加一个冒号
      redis-dump -u :password@127.0.0.1:6379 > redis.json
      #导入
      cat redis.json redis-load -u :password@localhost
    4. 备份恢复制定数据库
      备份所有库
      redis-dump -D -u :password@127.0.0.1:6379 > 6379.json
      备份指定数据库
      redis-dump -d 0 -D -u :password@127.0.0.1:6379 >6379.json
      恢复所有库(先清空flushall)
      redis-load -D -u :password@127.0.0.1:6379 < 6379.json
      恢复到指定数据库
      sed -i 's/{"db":0/{"db":10/' 6379.json
      redis-load -d 10 -D -u :password@127.0.0.1:6379 <6379.json
    5. redis定时备份、自动删除脚本
      #!/bin/bash
      #Author: Jerry.huang
      #This is auto dumping redis all databases!
      #+++++++++++++++++++++++++++++++++++++++++
      ### variables
      REDIS_BAKDIR=/data/redis/redisbak
      REDIS_BAKLOG=/data/redis/redisbak/bakrdb.log
      REDIS_DATADIR=/data/redis/redisdata
      REDIS_BAKNAME="redis.rdb"
      DATE_TIME=`date +%Y%m%d-%H%M%S`
      
      if [ ! -d ${REDIS_BAKDIR} ];then
          mkdir -p ${REDIS_BAKDIR}
      fi
      
      if [ ! -f ${REDIS_DATADIR}/${REDIS_BAKNAME} ];then
          echo "The '${REDIS_DATADIR}/${REDIS_BAKNAME}' database is not exists!"
          exit 1
      fi
      
      dumpall(){
          redis-dump -u :Passwd@127.0.0.1:6379 >${REDIS_BAKDIR}/${DATE_TIME}_${REDIS_BAKNAME}
          if [ $? -eq 0 ];then
              echo "$DATE_TIME _________________________________"      >> $REDIS_BAKLOG
              echo "'$REDIS_HOST' redis all databases backup success"  >> $REDIS_BAKLOG
              echo "=================================================" >> $REDIS_BAKLOG
          else
              echo "$DATE_TIME _________________________________"      >> $REDIS_BAKLOG
              echo "'$REDIS_HOST' redis all databases backup fail"     >> $REDIS_BAKLOG
              echo "=================================================" >> $REDIS_BAKLOG
          fi
          echo "" >> $REDIS_BAKLOG
          echo "" >> $REDIS_BAKLOG
      }
      
      deletebak(){
               find ${REDIS_BAKDIR} -name "*_${REDIS_BAKNAME}" -mtime +30 | xargs rm -rf
      }
      
      dumpall
      redis_dump_alldb.sh
    6. 官网及命令详解:
      http://www.redis.net.cn/order/
      https://cloud.tencent.com/document/product/239/19047
    7. 腾讯云禁用了flushall和flushdb
      redis-cli -h 127.0.0.7 -n 8 -a crs-123456:redis@2017 keys "*" | xargs redis-cli -h 10.30.3.8 -n 8 -a crs-123456:redis@2017 del

  • 相关阅读:
    位运算02 零基础入门学习C语言65(完)
    PE格式详细讲解4 系统篇04|解密系列
    PE格式详细讲解4 系统篇04|解密系列
    int指令02 零基础入门学习汇编语言65
    Tabhost漂亮的自定义实现(背景随着选项卡滑动改变)
    Android API Guide 之 User Interface笔记
    java程序员菜鸟进阶(九)windows下搭建SVN服务器及配置myeclipse SVN客户端
    android 左右页面滑动(滑屏)增加layout文件 而不是drawable(还有activity)
    android 最简单的九宫格实现
    ViewPager
  • 原文地址:https://www.cnblogs.com/Mrhuangrui/p/7027405.html
Copyright © 2011-2022 走看看