DBAtlas · Atlas de operaciones de bases de datos

3906: Failed to update database because the database is read-only (no se pudo actualizar la base de datos porque es de solo lectura)

SQL Server

¿Qué significa?

Intentó modificar datos (INSERT/UPDATE/DELETE/DDL) en una base de datos marcada como de solo lectura. SQL Server rechazó la escritura.

¿Por qué ocurre?

La base de datos se configuró como READ_ONLY; la conexión fue a una réplica secundaria de un Availability Group (destinada a lecturas); la base de datos quedó en solo lectura tras un snapshot o una restauración; o el sistema de archivos es de solo lectura. La causa típica es una aplicación dirigida por error a una réplica secundaria.

Cómo solucionarlo

Si realmente debe admitir escritura: ALTER DATABASE mydb SET READ_WRITE; En un Availability Group, dirija la aplicación a la réplica primaria (revise el enrutamiento de conexiones ReadWrite / ApplicationIntent). En un snapshot de solo lectura no se puede escribir; use como destino la base de datos de origen. Verifique también los permisos de los archivos y el sistema de archivos.

Abrir en DBAtlas →

Más entradas de este motor