Maison  >  Article  >  base de données  >  Pourquoi Redis crée-t-il 16 bases de données par défaut ?

Pourquoi Redis crée-t-il 16 bases de données par défaut ?

王林
王林avant
2021-02-25 09:17:512659parcourir

Pourquoi Redis crée-t-il 16 bases de données par défaut ?

Dans le travail de développement réel, nous utilisons généralement la base de données Redis pour la mise en cache, les verrous distribués/files d'attente de messages, etc. Mais nous nous posons généralement cette question : pourquoi 16 bases de données sont-elles créées par défaut après l'installation et la configuration du serveur Redis ?

Présentons cette question.

Pourquoi Redis crée-t-il 16 bases de données par défaut ?

1. L'origine de 16 bases de données

Redis est un serveur de stockage structuré par dictionnaire. Une instance Redis fournit plusieurs dictionnaires pour stocker les données. peut spécifier dans quel dictionnaire les données sont stockées. Ceci est similaire à la façon dont plusieurs bases de données peuvent être créées dans une instance de base de données relationnelle (comme le montre la figure ci-dessous), de sorte que chaque dictionnaire peut être compris comme une base de données indépendante.

Pourquoi Redis crée-t-il 16 bases de données par défaut ?

Redis prend en charge 16 bases de données par défaut. Vous pouvez modifier cette valeur en ajustant les bases de données dans le fichier de configuration redis redis/redis.conf. et la configuration sera terminée.

Pourquoi Redis crée-t-il 16 bases de données par défaut ?

Une fois que le client a établi un lien avec redis, il sélectionnera la base de données n°0 par défaut, mais vous pouvez utiliser la commande select pour modifier la base de données à tout moment.

# 切换数据库操作:切换到1
127.0.0.1:6379> SELECT 1
OK
127.0.0.1:6379[1]>
127.0.0.1:6379[1]>
# 切换到0
127.0.0.1:6379[1]> SELECT 0
OK
127.0.0.1:6379>
# 从1号库中获取username
127.0.0.1:6379[1]> get username 。

(Partage vidéo d'apprentissage : tutoriel vidéo redis)

Dans les projets réels, vous pouvez spécifier la base de données sous la forme d'un fichier de configuration redis, comme montré dans la figure ci-dessous Afficher

Pourquoi Redis crée-t-il 16 bases de données par défaut ?

2. Comprendre correctement le concept de « base de données » de redis

Étant donné que redis ne prend pas en charge les noms de bases de données personnalisés, toutes les bases de données Nommées par numéro. Les développeurs doivent enregistrer eux-mêmes la correspondance entre les données stockées et la base de données. De plus, Redis ne prend pas en charge la définition de mots de passe d'accès différents pour chaque base de données. Tous les clients peuvent accéder à toutes les bases de données ou n'ont pas l'autorisation d'accéder à toutes les bases de données. Pour bien comprendre le concept de « base de données » de redis, nous devons mentionner une commande :
Effacer les données de toutes les bases de données de l'instance redis
127.0.0.1:6379> certaines données de base de données Redis dans d'autres bibliothèques ne seront pas effacées
127.0.0.1:6379> FLUSH db0
Cette commande peut effacer toutes les données de base de données sous l'instance, ce qui est différent de la base de données relationnelle que nous connaissons. Plusieurs bibliothèques de bases de données relationnelles sont souvent utilisées pour stocker des données pour différentes applications, et il n'existe aucun moyen d'effacer simultanément toutes les données de bibliothèque sous l'instance. Pour Redis, ces bases de données ressemblent davantage à des espaces de noms et ne conviennent pas au stockage de données provenant de différentes applications. Par exemple, vous pouvez utiliser la base de données n° 0 pour stocker les données dans l'environnement de développement et utiliser la base de données n° 1 pour stocker les données dans l'environnement de test. Cependant, il n'est pas approprié d'utiliser la base de données n° 0 pour stocker les données de l'application. A et utilisez la base de données n°1 pour stocker les données de l'application B. Différents environnements Différentes instances Redis doivent être utilisées pour stocker les données. Redis est très léger. Une instance Redis vide n'occupe qu'environ 1 Mo de mémoire, vous n'avez donc pas à vous soucier du fait que plusieurs instances Redis occupent beaucoup de mémoire supplémentaire.

3. Une instance prend-elle en charge plusieurs bases de données dans un cluster ?

Les éléments ci-dessus sont tous basés sur la situation d'un seul Redis. Dans le cas d'un cluster, l'utilisation de la commande select pour changer de base de données n'est pas prise en charge, car il n'y a qu'une seule db0 en mode cluster redis

Apprentissage recommandé :

Tutoriel base de données redis

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer