Redis是一个NoSQL数据库,以key-value进行存储,支持高并发

主要特性: 线程安全、非阻塞(速度快),高耗时命令很危险(keys)

key 和value -最大为512M ,大于1024的key不是一个好主意

string 类型

无int float boolean概念

命令列表:

set/setex/setnx
(设置值,设置值和过期时间,设置值只当其不存在时)

get/getset(为一个key设置value并返回原始值)

INCR/decr
数值递增或递减 1

incrby/decrby
数值递增或递减 指定步长

list 类型

lpush/rpush

lpop/rpop

llen/lrange

LINDEX 获得某个位置元素

lset 在某个位置插入元素

SET

无序集合,保证不会有重复数据

HASH

键值对

批量执行:

Pipelinig

事务

清空数据:

flushdb

flushall

其它:

dbsize key的数量

持久保持

save 60 100 60秒内 100次变更则存盘

所有支持命令列表:

https://redis.io/commands

参考资料

常见命令使用

https://blog.csdn.net/u011277123/article/details/78692603/

codis

高可用技术方案

https://github.com/CodisLabs/codis

https://github.com/CodisLabs/codis/blob/release3.2/doc/tutorial_zh.md

FAQ:

redis多个库,不同的库之间操作是否相互影响?

Redis定时备份

https://www.kancloud.cn/tuna_dai_/day01/372459

#!/bin/bash

set -x

BACKUPDIR=/data/redis/backup
PASSWD='redis密码'
PORT = 6379
SAVE = `/usr/local/bin/redis-cli -p "$PORT" -a "$PASSWD" save`
DATADIR=`/usr/local/bin/redis-cli -p "$PORT" -a "$PASSWD" config get dir|grep -Ev 'dir|grep'`
DATE=`date +'%Y-%m-%d-%H:%M'`

if [ ! -d $BACKUPDIR ];then
        mkdir $BACKUPDIR \
        || echo "can't make dir !!!" \
        && exit 1
fi

cp $DATADIR/dump.rdb $BACKUPDIR/$DATE.rdb

if [ $? -eq 0  ];then
    echo '1' >> $BACKUPDIR/record.log
else
    echo '0' >> $BACKUPDIR/record.log
fi

https://blog.csdn.net/xyang81/article/details/51477925

主机之间免密拷贝文件

results matching ""

    No results matching ""