Conexiones
Las conexiones son la forma en que las aplicaciones y las bases de datos pueden comunicarse. Hay dos formas principales de hacerlo:
- Una conexión externa realiza un viaje de ida y vuelta por Internet, por lo que es mucho más lenta que la comunicación interna. Recomendamos las conexiones externas si sólo alojas tu base de datos con nosotros, pero no tu front-end. Para las bases de datos, te proporcionamos los detalles de la conexión externa a la base de datos.
Nota: En el futuro, las conexiones externas estarán desactivadas por defecto para las bases de datos, y recomendaremos mantenerlas desactivadas cuando no se utilicen por motivos de seguridad. - Una conexión interna permanece dentro de nuestra red y, por tanto, es mucho más rápida y segura. Recomendamos este método si alojas tanto tu front-end como tu base de datos con Alojamiento de Aplicaciones y Alojamiento de Bases de Datos.
Añadir una Conexión Interna
Puedes añadir conexiones internas desde la página Configuración de una aplicación o desde la página Información de una base de datos. No importa dónde inicies el proceso; el resultado será el mismo.
Para añadir una conexión desde una base de datos a una aplicación, ve a Bases de datos > nombre de la base de datos > Información general > en la sección Conexiones internas, haz clic en Añadir aplicación y selecciona la aplicación a la que deseas crear la conexión interna.
Variables de Entorno
Podemos rellenar automáticamente las variables de entorno de una aplicación a partir de los detalles de la conexión a la base de datos. No copies y pegues los detalles de la conexión interna en las variables de entorno. Haz clic en Añadir conexión o Añadir aplicación y selecciona la casilla Añadir variables de entorno…. Esto rellenará automáticamente las variables de entorno a partir de la base de datos a la que te estás conectando.
Algunas aplicaciones pueden esperar variables de entorno (claves) con nombres diferentes. Puedes editar los nombres en la lista antes de añadir la conexión o editarlos más tarde en la página Configuración de la aplicación.
Conexiones Internas y el Proceso de Construcción
Las conexiones internas sólo están disponibles durante el tiempo de ejecución; no están disponibles durante el proceso de construcción.
Si tu aplicación intenta conectarse a una base de datos utilizando una conexión interna durante el proceso de construcción, se producirá un error que indicará que la base de datos no se está ejecutando, lo que hará que falle la construcción. Esto es de esperar porque la conexión interna no está activa durante la construcción; sólo puede utilizarse durante el tiempo de ejecución.
Hay un par de formas de evitarlo.
Opción 1: Traslada la lógica que se conecta a la base de datos del comando de construcción de la aplicación al comando de inicio. Por ejemplo: si tienes un comando como prisma migrate
en el proceso de construcción y mueves ese comando al comando de inicio, tu aplicación sólo accederá a la base de datos durante el tiempo de ejecución, y la construcción se realizará correctamente.
Opción 2: Añade variables de entorno independientes según sea necesario para la conexión a la base de datos, una disponible para el proceso de construcción y la otra sólo para el tiempo de ejecución. Las claves pueden ser las mismas (por ejemplo, DB_CONNECTION_URL
) siempre que una sólo esté disponible durante el proceso de construcción y la otra sólo durante el tiempo de ejecución. Utiliza los detalles de la conexión externa de la base de datos (Bases de datos > nombre de la base de datos > Visión general > Conexiones externas) para los valores de cualquier variable que se vaya a utilizar en el proceso de construcción.
Puertos
El puerto para las conexiones internas a una aplicación es 8080, y el puerto para las conexiones internas a una base de datos es 3306. Los puertos para estas conexiones internas no se pueden cambiar.
Para las aplicaciones, Kinsta establece automáticamente la variable de entorno PORT
. No es necesario que la definas tú mismo ni que la programes en la aplicación. Cuando se despliega una aplicación, se puede acceder a ella en Internet a través de los puertos 80 y 443, y dirigimos esos puertos al contenedor a través del puerto 8080.
Eliminar una Conexión Interna
Si necesitas eliminar una conexión, ve a la página Visión general de la base de datos y, en Conexiones internas, haz clic en el icono de eliminar (papelera).
En el modal/ventana emergente Eliminar conexión, haz clic en Eliminar conexión para confirmar y eliminar la conexión entre la aplicación y la base de datos.
Conexiones Externas
Puedes encontrar los detalles de conexión de las conexiones externas, dentro de Bases de datos > nombre de la base de datos > Visión general > Conexiones externas. Puedes utilizar estos detalles para conectarte a tu base de datos a través de la línea de comandos (CLI) o con una herramienta de base de datos.
Cambiar la Contraseña de la Base de Datos
Puedes cambiar la contraseña de la base de datos para tus conexiones internas y externas. En la página Descripción general de la base de datos, dentro de la Conexión interna o Conexión externa, haz clic en Cambiar contraseña e introduce una nueva contraseña. También puedes hacer clic en Generar una nueva contraseña para crearla automáticamente.
Las contraseñas deben tener al menos 8 caracteres e incluir como mínimo una letra minúscula, una mayúscula, un número y uno de los siguientes caracteres especiales: , & * [ ] : ’ $ ` ”
Cuando cambias la contraseña, Kinsta inicia automáticamente un nuevo despliegue para las aplicaciones con conexión interna a la base de datos, utilizando valores de variables de entorno coincidentes con los de la contraseña antigua. Debes cambiar manualmente la contraseña en cada cliente que utilices para conectarte a la base de datos y actualizar cualquier otra variable de entorno relevante.