PostgreSQL servicio¶
Un archivo pg_service.conf
permite utilizar un alias con nombre para una conexión al servidor PostgreSQL. En lugar de almacenar el nombre de host, el puerto, el nombre de la base de datos y más en el archivo del proyecto QGIS, estos pueden ser almacenados por separado. Incluso es posible almacenar el nombre de usuario y la contraseña en un archivo pg_service.conf
, para evitar que esto se almacene en texto claro en el Proyecto QGIS.
Lea más sobre los servicios de PostgreSQL en la documentación de QGIS.
QField - Conexión directa¶
Si se conecta directamente desde QGIS a su base de datos, puede utilizar un archivo pg_service.conf
colocándolo en la carpeta de datos de QField. Puede colocar su archivo en el almacenamiento del dispositivo interno o en el almacenamiento de la tarjeta SD. Puede verificar la ruta de la carpeta de datos de QField en la parte inferior de la pantalla Acerca de QField
en la aplicación.
Por lo general, la ruta en los dispositivos Android se ve así: /Android/data/ch.opengis.qfield/files/QField
.
Nota
A diferencia de los sistemas *NIX donde el archivo se llama .pg_service.conf
, el archivo en Android se llama pg_service.conf
sin el signo de punto inicial (.
).
QFieldCloud¶
QFieldCloud también admite configuraciones pg_service.conf
. Debe configurar sus capas de PostgreSQL con la acción en la nube "Edición sin conexión" y almacenar la configuración de su servicio en la página de secretos del proyecto QFieldCloud.
Lea más cómo configurar el servicio PostgreSQL en la documentación de QFieldCloud.
Creación de un archivo pg_service.conf
para la conexión PostgreSQL en QGIS y Secrets¶
Antes de empezar, asegúrese de que su base de datos PostgreSQL permite conexiones desde QFieldCloud. Consulte Especificaciones técnicas para obtener instrucciones.
Configurar el archivo pg_service.conf
.¶
Primero necesitamos configurar un archivo de configuración. Hay muchas opciones para organizar esto, lea más en la documentación de PostgreSQL o siga la siguiente descripción.
-
Crear un archivo de configuración:
-
En Windows: Cree un archivo llamado
pg_service.conf
y guárdelo en una ubicación conveniente. -
En Linux/MacOS/Unix: Cree un archivo llamado
.pg_service.conf
en su carpeta de inicio (~
). -
Definir parámetros de conexión:
Dentro del archivo, especifique los parámetros de conexión para su base de datos PostgreSQL utilizando el siguiente formato:
[SERVICE_NAME]
host=your_host_or_ip
port=your_port
dbname=your_database_name
user=your_username
password=your_password
Sustituya los marcadores de posición (tu_host_o_ip
, tu_puerto
, tu_nombre_basedatos
, tu_nombreusuario
, tu_contraseña
) por los detalles reales de la conexión y guarde el archivo.
Pasos adicionales de configuración para Windows¶
-
Establecer variable de entorno: Para asegurarse de que QGIS reconoce
pg_service.conf
, cree una variable de entorno que apunte a su ubicación: -
Vaya a "Este PC" o "Mi PC" > Propiedades > Configuración avanzada del sistema > Variables de entorno.
- Añadir una variable nueva:
- Nombre de la variable:
PGSERVICEFILE
- Valor variable:
C:\Users\<YourUsername>\AppData\Roaming\postgresql\pg_service.conf
(or yourpg_service.conf
file path).
- Nombre de la variable:
Alternativamente, puede establecer variables de entorno directamente en QGIS a través de Configuración > Opciones > Sistema > Entorno. Consulte Configuración del sistema QGIS para más detalles.
-
Prueba la conexión en QGIS: Abre QGIS y configura una nueva conexión PostgreSQL usando el nombre del servicio definido en
pg_service.conf
(por ejemplo,[MY_QGIS_DB]
) en los detalles de la conexión. QGIS leerá la configuración depg_service.conf
automáticamente. -
Abrir QGIS.
- Vaya a "Capa" > "Añadir capa" > "Añadir capas PostGIS...".
- En "Crear una nueva conexión PostGIS", seleccione "Servicio" en el menú desplegable.
- Introduzca el nombre del servicio de
pg_service.conf
(por ejemplo,[NINJA_DB]
) en el campo "Service". - Haga clic en "Aceptar" para conectarse a su base de datos PostgreSQL utilizando las configuraciones de
pg_service.conf
.
- Añadir Parámetro a los Secretos de QFieldCloud: Navegue a la página de secretos del proyecto y copie el servicio directamente de
.pg_service.conf
al secreto. Siga Secretos como guía.