Redis databáze (jedna instance Redisu) by se měly používat pro oddělení různých klíčů patřících stejné aplikaci a nikoliv pro různé klíče různých aplikací.
Počet databází v Redisu je uveden v konfiguračním souboru /etc/redis/redis.conf
.
# Set the number of databases. The default database is DB 0, you can select # a different one on a per-connection basis using SELECT where # dbid is a number between 0 and 'databases'-1 databases 16
V redis-cli
tento údaj můžete získat příkazem
127.0.0.1:6378> config get databases 1) "databases" 2) "16"
Počet databází můžete změnit ve výše uvedeném konfiguračním souboru (např. databases 20). Je nutné restartovat redis server. Používám redis na portu 6378. Jak změnit port se můžete dozvětět v tomto příspěvku.
sudo service redis-server restart redis-cli -p 6378 127.0.0.1:6378> config get databases 1) "databases" 2) "20"
Je možné také získat databáze, které obsahují nějaký klíč (příkaz INFO
).
info keyspace # Keyspace db0:keys=3429,expires=0,avg_ttl=0 db1:keys=1,expires=0,avg_ttl=0 db2:keys=14,expires=0,avg_ttl=0
Pro zvolení určité databáze slouží příkaz SELECT
.
127.0.0.1:6378> select 19 OK 127.0.0.1:6378[19]> keys * (empty list or set) 127.0.0.1:6378[19]> select 2 OK 127.0.0.1:6378[2]> keys * 1) "aa" 2) "e" 3) "a" 4) "h" 5) "g" 6) "c" 7) "b" 8) "ab" 9) "j" 10) "d" 11) "i" 12) "aaa" 13) "f" 14) "k"
Zdroje:
https://redis.io/commands/select
https://www.baeldung.com/redis-list-all-databases