sql >> Base de Datos >  >> RDS >> Oracle

Una forma de verificar el sql terminado de Oracle

Hay mucho que explicar aquí, pero vincularé una de mis respuestas anteriores para un problema similar:los pasos son en realidad los mismos porque solo difieren el servicio de la base de datos y el fondo.

1) Lo primero es que debe proporcionar un script bash que esperará hasta que un servicio responda a través de http. En las bases de datos, generalmente sucede cuando la base de datos está lista para funcionar y todas las inicializaciones están listas.

el script wait-for-it.sh escrito por vishnubob en su espéralo repositorio @ github.

2) En segundo lugar, debe obtener ese script dentro de cada contenedor que requiere su base de datos.

3) En tercer lugar, especifica un entrypoint en su archivo de redacción, que ejecutará el script de espera antes del command real la ejecución de su servicio se activará.

ejemplo de un punto de entrada (como referencia a la respuesta a la que me vinculo)

ventana acoplable-punto de entrada.sh:

#!/bin/bash
set -e
sh -c './wait-for-it.sh oracle:3306 -t 30'
exec "[email protected]"

Todos estos pasos se explican en detalle aquí en el escenario 2, tenga en cuenta una referencia a mi otra respuesta dentro de la respuesta que señalo aquí. Este problema es muy común para los principiantes y requiere muchas explicaciones, por lo que no puedo publicarlo todo aquí.

nota aquí sobre depends_on lo que podría pensar que es una solución nativa para este problema de la ventana acoplable:como dicen los documentos, solo espera hasta que el contenedor se está ejecutando, no termina sus trabajos internos, la ventana acoplable no sabe cuánto queda por hacer.