Page tree

En el modo cliente-servidor el sistema 1C:Enterprise requiere el uso de un sistema de gestión de base datos externo. Una de las opciones es Postgre SQL. Postgre SQL esta disponible para Windows OS y para Linux. Este manual es para instalar en el sistema Linux CentOS (Redhat, Oracle Linux) y Windows

Guia paso por paso

Para el correcto funcionamiento hay que aplicar unos parches a Postgre SQL. Este trabajo ya fue realizado por expertos de 1C, por lo que puede descargar la versión de Postgres con todos los parches incluidos.

Primero descargue el Postgre SQL. 

Descarga de instalador para Windows

Puede descargar la versión x32 o x64 desde este pagina. 

PostgresPro 1C_9.4.10_X86bit_1C_Setup.exe

PostgresPro 1C_9.4.10_X64bit_1C_Setup.exe

Proceda con la instalación siguiendo las instrucciones en la ventana de instalación.

Instalación de PostgreSQL para Linux

Para Linux, lo mas rápido es instalar el repositorio e instalar el postgresql. 

Repositorio para CentOS 6/7
sudo rpm -ivh http://1c.postgrespro.ru/keys/postgrespro-1c-centos94.noarch.rpm && sudo yum install postgresql-pro-1c-9.4
Repositorio para Oracle Linux 6/7
 sudo rpm -ivh http://1c.postgrespro.ru/keys/postgrespro-1c-oraclelinux94.noarch.rpm && sudo yum install postgresql-pro-1c-9.4
curl http://1c.postgrespro.ru/keys/GPG-KEY-POSTGRESPRO-1C > GPG-KEY-POSTGRESPRO-1C
rpm --import GPG-KEY-POSTGRESPRO-1C
echo [postgrespro-1c] > /etc/yum.repos.d/postgrespro-1c.repo
echo name=Postgres Pro 1C repo >> /etc/yum.repos.d/postgrespro-1c.repo
echo baseurl=http://1c.postgrespro.ru/archive/2017_09_02/rpm/9.6/centos-7-x86_64/ >> /etc/yum.repos.d/postgrespro-1c.repo
echo gpgcheck=1 >> /etc/yum.repos.d/postgrespro-1c.repo
echo enabled=1 >> /etc/yum.repos.d/postgrespro-1c.repo
yum makecache
yum install -y postgresql96-server-9.6.5-1.1C.x86_64


Cambio de locale para correcto funcionamiento del sistema

1C:Enterprise reiuere que el locale con cual se crea la base de datos coincide con el locale de aplicacion. Hay varias modos como definir el local para una base de datos. Lo mas sencillo es definir el locale antes de inicializacion de postgres. Aunque es posible pasar locale como parametro en el comando de inicializacion no siempre este parametro se considera correctamente. Por eso le recomendamos modificar el archivo /etc/init/d/postgresql


Inicializacion de la base de datos

Inicie la base de datos de postgresql. Sin este paso postgresql no va arrancar y se termina con un error.

Postgresql 10, últimos versiones de 9

export PGSETUP_INITDB_OPTIONS="--locale='es_EC.utf8'"

/usr/pgsql-10/bin/postgresql-10-setup initdb

Postgresql 9

service postgresql initdb es_EC.utf8

Permitir el acceso a la base de datos

Sin configuración de acceso, el servidor de 1C:Enterprise no va poder conectarse a la base de datos. Los accesos de postgresql se configuran en un fichero de configuración pg_hba.conf. Su ubicación exacta dependerá de la instalación, pero normalmente se encuentra en una de estas dos rutas:

  • /var/lib/pgsql/data/pg_hba.conf
  • /etc/postgresql/main/pg_hba.conf

El contenido del archivo tendrá algo así:

# TYPE  DATABASE    USER        CIDR-ADDRESS          METHOD

# "local" is for Unix domain socket connections only
local   all         all                               ident
# IPv4 local connections:
host    all         all         127.0.0.1/32          ident
# IPv6 local connections:
host    all         all         ::1/128               trust

Por omisión 1C:Enterprise intenta conectarse localmente (si el servidor de base de datos y servidor de aplicaciones están en la misma maquina) a través de IPv6, entonces hay que habilitar la posibilidad de conectar por el protocolo IPv6. En el ejemplo, lo permitimos con la directiva "trust". 

Para permitir conexiones con contrasena se usa directiva "md5"


Para mayor información por favor consulte los manuales de PostgreSQL

Artículos relacionados