DBAtlas · Atlas d'exploitation des bases de données

READONLY: READONLY You can't write against a read only replica (écriture impossible sur un réplica en lecture seule)

Redis

Que signifie cette erreur ?

Une commande d'écriture a été envoyée à un nœud réplica (slave). Les réplicas sont en lecture seule par défaut ; les écritures ne peuvent être effectuées que sur le master.

Cause

Le client se connecte à un réplica au lieu du master, l'ancien master est devenu réplica après un failover, mauvais routage vers le mauvais nœud dans Sentinel/Cluster, ou load balancer transmettant les écritures à un réplica.

Comment la corriger

Routez les requêtes d'écriture vers le nœud master. Si vous utilisez Sentinel, interrogez Sentinel pour obtenir le master actuel (SENTINEL get-master-addr-by-name). Dans Cluster, écrivez sur le bon master de shard. Configurez la séparation lecture/écriture dans la bibliothèque cliente. Après un failover, rafraîchissez les connexions pour qu'elles pointent vers le nouveau master.

Ouvrir dans DBAtlas →

Autres entrées pour ce moteur