DBAtlas · Veritabanı operasyon atlası

1290: ER_OPTION_PREVENTS_STATEMENT: running with the --read-only option

MySQL

Ne demek?

MySQL sunucusu --read-only veya --super-read-only seçeneğiyle çalıştığı için veri değiştiren komutu (INSERT/UPDATE/DELETE/DDL) reddetti. read_only'de CONNECTION_ADMIN/SUPER yetkili kullanıcılar yazabilir; super_read_only açıkken onlar da yazamaz ve mesaj '--super-read-only option' olarak gelir.

Neden olur?

read_only=ON ya da super_read_only=ON ayarı; çoğunlukla bir replika (replica) sunucusuna yanlışlıkla yazma denemesi. Replikalar ve Group Replication secondary'leri veri tutarlılığı için salt-okunur tutulur; failover otomasyonları eski primary'yi super_read_only'ye alır. Failover/switchover sırasında yanlış düğüme yazmak da tetikler.

Nasıl çözülür?

Yazma işlemlerini primary (source) sunucuya yönlendirin. Bu sunucu gerçekten yeni primary olmalıysa: SET GLOBAL read_only = OFF; (read_only'yi kapatmak super_read_only'yi de otomatik kapatır; super_read_only'yi açmak da read_only'yi açar). HA aracınızın (Orchestrator/Group Replication/InnoDB Cluster) yönettiği düğümlerde elle değiştirmeyin. Durumu görmek için: SELECT @@read_only, @@super_read_only;

DBAtlas'ta aç →

Aynı motorda diğer kayıtlar