Redis

  • redis-cli

sysctl.conf

vm.overcommit_memory = 1

Пример конфига redis.conf

daemonize yes

databases 30

# Bind:
bind 127.0.0.1
port 6379

tcp-backlog 511
tcp-keepalive 0

timeout 0

# PID:
pidfile /var/run/redis/redis-server.pid

# Socket:
unixsocket /var/run/redis/redis.sock
unixsocketperm 666

# Log:
loglevel warning
logfile /var/log/redis/redis-server.log

# Save:
save 900 1
save 300 10
save 60 10000

appendfsync everysec
appendonly no

maxclients 1000000

repl-disable-tcp-nodelay no
repl-diskless-sync no
  • --rdb /usr/local/var/db/redis/dump.rdb

Опция save сохраняет БД redis в указанный в конфигурационном файле файл /usr/local/var/db/redis/dump.rdb

redis-cli save

Восстановление БД отсутствует как таковое. Для восстановления достатоно переписать файл БД Redis dump.rdb из восстанавливаемой БД.

$ redis-cli -n 1 KEYS "session:*" | xargs redis-cli -n 1 DEL
  • -n - ID БД Redis
for key in `echo 'KEYS session:*' | redis-cli | awk '{print $1}'`
 do echo DEL $key
done | redis-cli
$ echo 'KEYS session:*' | redis-cli | awk '{print $1}
$ redis-cli KEYS "session:*" | xargs redis-cli DEL
$ redis-cli -n 1 ZRANGE sn:email 0 100|grep email@gmail.com
$ redis-cli -n 1 ZREM sn:email email@gmail.com