Ir al contenido

Operaciones con bases de datos

Las operaciones con bases de datos combinan el estado del motor con la infraestructura que hace utilizable el motor: la disponibilidad del nodo Storage, el almacenamiento, los enlaces de las vinculaciones, la conectividad de las cargas de trabajo y la identidad de acceso. Supervisa todas esas capas antes de tratar una consulta fallida de una aplicación como un incidente del motor.

Protege primero los datos y restablece después el camino del cliente con el cambio más pequeño que funcione. Una recuperación termina cuando el camino original del cliente funciona, se conoce la causa, se conservan las pruebas y se retira cualquier acceso o exposición temporal.

Acuerda el objetivo de punto de recuperación (RPO), el objetivo de tiempo de recuperación (RTO), los responsables del escalado y las pruebas de restauración antes de que la base de datos sea crítica. Los controles de monitorización y de reinicio reducen el tiempo de diagnóstico, pero no sustituyen a un plan de recuperación de datos probado.

Para una base de datos gestionada en ejecución, supervisa el estado del motor, la disponibilidad del nodo Storage, el crecimiento del almacenamiento, la latencia, la presión de conexiones, los resultados de las operaciones recientes y el estado de cada vinculación. La vista de detalle de la base de datos también muestra las métricas específicas del motor, los logs y las funciones de Explorer o Console disponibles.

Las conexiones externas obtienen las mismas comprobaciones de estado, métricas del motor, Explorer y Console, pero no logs del motor, acciones de ciclo de vida ni vinculaciones, porque Opfield no ejecuta el motor. Si una conexión externa muestra TLS certificate is not verified, añade su certificado de CA o usa Test and enable verification; consulta Verificación del certificado TLS. Consulta Bases de datos gestionadas y externas de un vistazo.

Una instancia pausada desactiva intencionadamente el comportamiento normal del estado, las métricas, Explorer y Console hasta que se reanuda. No generes alertas por esa ausencia esperada como si fuera un fallo del motor; registra la ventana de pausa y verifica que el servicio vuelve a Ready antes de reactivar las cargas de trabajo dependientes.

Usa los logs para clasificar los errores de arranque, almacenamiento, autenticación, permisos y recuperación. Lee la etapa de una operación antes de hacer un cambio correctivo, sobre todo tras un aprovisionamiento, un redimensionamiento o una eliminación. Usa Explorer o Console solo con el permiso de lectura, escritura o administración necesario, y evita las consultas de producción sin límites a través de una interfaz de operador.

Explorer recorre los esquemas y las filas de PostgreSQL y ClickHouse; los cambios de esquema, como añadir o modificar columnas, están disponibles para PostgreSQL. Los almacenes clave-valor usan la consola de comandos. Cada sentencia de la consola se clasifica como operación de lectura, de escritura o administrativa y requiere, respectivamente, databases:query:read, databases:query:write o databases:query:admin.

Las copias de seguridad de la configuración de Opfield no contienen datos de las bases de datos. Haz copias de seguridad de los datos con una política de copias de seguridad, conserva los resultados de las restauraciones y prueba las restauraciones en un destino separado. Planifica una copia de seguridad antes de un trabajo de ciclo de vida destructivo, de un redimensionamiento importante o de una migración que implique datos persistentes. El conjunto de recuperación del plano de control se describe en Actualizaciones, copias de seguridad y restauración.

En una instancia PostgreSQL gestionada, la base de datos y todos los objetos de aplicación que contiene pertenecen al rol de aplicación de la instancia, y cada vinculación funciona como ese rol. La consola SQL también ejecuta las sentencias de escritura y administrativas como el rol de aplicación, de modo que una tabla creada o rellenada desde la consola la pueden usar todas las vinculaciones a la vez; las sentencias de solo lectura mantienen un principal de solo lectura. Para una sentencia que necesite el principal de control propio de Opfield, como crear un rol o una extensión que requiera un superusuario, empieza la petición con RESET ROLE; los objetos que cree se entregan al rol de aplicación justo después. Opfield también repara esta propiedad siempre que crea o concilia una vinculación, lo que corrige las tablas creadas desde la consola en versiones anteriores. La reparación solo cambia objetos dentro de la base de datos de la aplicación y omite los esquemas del sistema y los miembros de extensiones. Las vinculaciones siguen listas mientras el nodo de la base de datos se vuelve a conectar.

La consola interactiva está limitada intencionadamente por un presupuesto de ejecución compartido entre sentencias. Es una herramienta de operador, no un ejecutor de migraciones por lotes. Prefiere herramientas de migración versionadas para los cambios de esquema y el mantenimiento de larga duración, y usa una identidad de solo lectura o con privilegios reducidos siempre que sea posible. Una desconexión del navegador no debe considerarse prueba de que una consulta se canceló; comprueba el estado resultante del motor antes de reintentar.

La recopilación de la monitorización se gestiona en segundo plano. Opfield inicia la recopilación tras el arranque y cuando una base de datos gestionada está lista; abrir la página de detalle de la base de datos no es lo que la desencadena. En una primera visita, un gráfico puede esperar a la primera muestra real o a la consulta histórica, pero la interfaz debe distinguir los datos ausentes de una muestra correcta.

Recupera una vinculación de carga de trabajo fallida

Sección titulada «Recupera una vinculación de carga de trabajo fallida»

Comprueba una vinculación fallida en este orden:

  1. Confirma que la base de datos gestionada está Ready y que su nodo Storage está en línea.
  2. Confirma que el nodo Docker de destino y la carga de trabajo están en línea e informan de su estado actual.
  3. Revisa el estado deseado duradero de la vinculación y su operación más reciente.
  4. Comprueba que el enlace de la vinculación en el conector de Secure Links compartido del nodo está conciliado y que la carga de trabajo está conectada a la red de enlace.
  5. Verifica el principal del motor propio de la vinculación y los permisos previstos.
  6. Comprueba la configuración que ha recibido la carga de trabajo y los logs de la aplicación.

Prefiere la conciliación o un reintento concreto después de corregir la causa raíz. No elimines a mano los objetos de red ni las identidades del motor propiedad de Opfield; hacerlo puede convertir un problema de enlace recuperable en una discrepancia de estado o en un problema de limpieza huérfana.

Pausar/reanudar, reiniciar, redimensionar, rotar credenciales, rotar certificados, la publicación directa, la eliminación de vinculaciones y la eliminación de bases de datos deben ir seguidos de la verificación correspondiente: estado del motor, conexión del cliente, estado de la ruta o del listener, logs, métricas y resultado registrado del Task. La publicación directa es opcional; supervísala como un camino de clientes externos, por separado de las vinculaciones privadas.

Al eliminar una base de datos, elimina o migra primero las vinculaciones y espera a que se limpien sus enlaces y sus identidades. Una eliminación fallida debe permanecer en el historial de operaciones de Opfield para su recuperación. No fuerces la eliminación del almacenamiento ni de los usuarios en la capa del daemon o del motor salvo que lo exija un procedimiento de recuperación explícito.

Runbook de copia de seguridad y restauración

Sección titulada «Runbook de copia de seguridad y restauración»

Define un objetivo de punto de recuperación y un objetivo de tiempo de recuperación específicos del motor antes del uso en producción. Configura una política de copias de seguridad con un destino de almacenamiento fuera del nodo y un número de copias que conservar. Mantén las copias fuera del nodo Storage, cífralas, registra la versión del motor y el comando de restauración y pruébalas en un destino aislado. Una copia de seguridad correcta sin una prueba de restauración correcta no es una prueba de recuperación.

Para un ejercicio de restauración:

  1. Crea un destino separado con un motor compatible y capacidad de almacenamiento suficiente.
  2. Restaura la copia sin sobrescribir la instancia activa; la restauración de Opfield crea por defecto una base de datos gestionada nueva y requiere un destino vacío.
  3. Ejecuta comprobaciones de integridad y consultas representativas de la aplicación.
  4. Vuelve a crear el acceso con vinculaciones nuevas o identidades de cliente con un alcance reducido.
  5. Compara los recuentos de filas, claves y tablas y las invariantes a nivel de aplicación.
  6. Registra la duración, los pasos manuales y cualquier restricción de versión descubierta.

Las copias de seguridad de Opfield son copias nativas programadas, no recuperación a un punto en el tiempo: la programación determina cuántos datos puede perder una restauración. Mantén al menos un destino de copias de seguridad fuera de las instalaciones. La replicación en otros nodos Storage está disponible en Business y Enterprise a través de Availability.

Clasifica antes de cambiar el estado: los fallos del plano de control afectan a los Tasks o a la conciliación; los fallos del nodo afectan a la actualidad del daemon y al entorno de ejecución local; los fallos del motor aparecen en los logs y en el estado de la base de datos; los fallos del almacenamiento afectan al montaje o a la capacidad; los fallos de la vinculación afectan al estado del listener o del principal; los fallos de la aplicación aparecen cuando la conectividad ya funciona. Este orden evita reiniciar un motor en buen estado para resolver un error de permisos de la aplicación.

Tras la recuperación, verifica el camino original del cliente, no solo la pantalla de administración. Confirma una consulta real, los permisos esperados, una recopilación de estado estable y que no queda ninguna publicación directa temporal, rol elevado, token de depuración ni cambio de red manual.