B3. Utilizzo del DBMS PostgreSQL

Descrizione generale

PostgreSQL — un DBMS relazionale a oggetti. È un'alternativa libera a un DBMS commerciale (Oracle Database, Microsoft SQL Server ecc.) In reti antivirus grandi DBMS PostgreSQL può essere utilizzato come database esterno per Dr.Web Enterprise Security Suite.

Per utilizzare PostgreSQL come database esterno

1.Installare il server PostgreSQL o Postgres Pro.

2.Configurare il Server Dr.Web per l'utilizzo del database esterno corrispondente. Si può farlo nel file di configurazione oppure attraverso il Pannello di controllo: nel menu Configurazione del Server Dr.Web, nella scheda Database.

Per la connessione al database PostgreSQL può essere utilizzata solo l'autenticazione trust, password e MD5.

Installazione e versioni supportate

1.Scaricare l'ultima versione del prodotto gratuito PostgreSQL (il server PostgreSQL e, se necessario, il relativo driver ODBC) o, come minimo, evitare di utilizzare le versioni precedenti alla 8.4 o alla 11.4.1 nel caso di Postgres Pro.

2.Creare un database PostgreSQL in uno dei seguenti modi:

a)Attraverso l'interfaccia grafica pgAdmin.

b)Tramite il comando SQL CREATE DATABASE.

Il database deve essere creato in codifica UTF8.

Il passaggio al database esterno è descritto in p. Cambio del tipo di DBMS di Dr.Web Enterprise Security Suite.

Prestare inoltre attenzione ai requisiti di sistema per il Server Dr.Web nel caso di utilizzo del database esterno PostgreSQL (v. Guida all'installazione, p. Requisiti di sistema).

Parametri

Per configurare l’utilizzo del database PostgreSQL, si utilizzano i parametri descritti nella tabella sottostante.

PostgreSQL

Nome

Valore predefinito

Descrizione

host

<Socket UNIX locale>

Host del server PostgreSQL

port

 

Porta del server PostgreSQL o l’estensione del nome di file del socket

dbname

drwcs

Nome del database

user

drwcs

Nome utente

password

drwcs

Password

options

 

Opzioni di tracciamento/debug da inviare al server

requiressl

 

1 per una richiesta di stabilire una connessione SSL

0 per l'assenza di tale richiesta

temp_tablespaces

 

Namespace per le tabelle temporanee

default_transaction_isolation

 

Modalità di isolamento della transazione (v. documentazione di PostgreSQL)

Informazioni tecniche anche possono essere trovate sull'indirizzo https://www.postgresql.org/docs/.

Interazione del Server Dr.Web con il database PostgreSQL attraverso UDS

Se il Server Dr.Web e il database PostgreSQL sono installati sulla stessa macchina, è possibile configurare la loro interazione attraverso UDS (socket di dominio UNIX).

Per configurare l'utilizzo attraverso UDS

1.Nel file di configurazione del database PostgreSQL postgresql.conf trascrivere la seguente directory per UDS:

unix_socket_directory = '/var/run/postgresql'

2.Riavviare PostgreSQL.

Configurazione del database PostgreSQL

Per migliorare le prestazioni nel caso di utilizzo del database PostgreSQL, è consigliato effettuare una configurazione basata su informazioni dai manuali database ufficiali.

Se viene utilizzato un database di grandi dimensioni e se sono disponibili le risorse di calcolo adeguate, è consigliato configurare i seguenti parametri nel file di configurazione postgresql.conf:

Impostazione minima:

shared_buffers = 256MB

temp_buffers = 64MB

work_mem = 16MB

Impostazione avanzata:

shared_buffers = 1GB

temp_buffers = 128MB

work_mem = 32MB

fsync = off

synchronous_commit = off

wal_sync_method = fdatasync

commit_delay = 1000

max_locks_per_transaction = 256

max_pred_locks_per_transaction = 256

Il parametro fsync = off migliora significativamente le prestazioni, ma può portare a una completa perdita di dati in caso di interruzione di corrente o di crash del sistema. La disattivazione del parametro fsync è consigliata se è disponibile un backup del database per la possibilità del completo ripristino del database.

 

L’impostazione del parametro max_locks_per_transaction può essere utile per fornire un’operazione ininterrotta nel caso di accesso massiccio alle tabelle del database, in particolare, durante l’aggiornamento del database a una versione nuova.