Installare e configurare PostgreSQL (Windows)
Le istruzioni fornite di seguito sono destinate all'amministratore di PostgreSQL (non ai server host del database). Se si intende includere il livello di disponibilità elevata nell'implementazione, fare riferimento alla sezione ThingWorx a disponibilità elevata di questo Help Center.
Installare PostgreSQL e creare un nuovo ruolo utente
1. Per informazioni sulle versioni di PostgreSQL supportate, fare riferimento a Requisiti di sistema di ThingWorx.
* 
Per i passi descritti in questa procedura viene utilizzata la versione di PostgreSQL x.x, dove x.x è la versione supportata.
2. Scaricare e installare la versione appropriata di PostgreSQL da http://www.postgresql.org/download/.
3. Aprire PostgreSQL utilizzando PgAdmin. Lo strumento PgAdmin è disponibile nel download di PostgreSQL.
* 
PgAdmin è uno strumento di gestione open source per i database incluso nel download di PostgreSQL. Lo strumento offre supporto Unicode completo, interrogazione veloce, multi-thread e strumenti di modifica dei dati, nonché supporto per tutti i tipi di oggetti PostgreSQL.
4. Creare un nuovo ruolo utente come descritto di seguito.
a. Fare clic con il pulsante destro del mouse su PostgreSQLx.x (<IP o nome host del database>:<Numero di porta di PostgreSQL>). Esempio: PostgreSQLx.x (localhost:5432)
b. Selezionare New Object>New Login Role. Nella tabella Properties, nel campo Role name, immettere il <nome ruolo utente PostgreSQL> per l'amministrazione di PostgreSQL.
c. Nella scheda Definition, nel campo Password, immettere una password sicura e univoca per l'amministrazione di PostgreSQL (viene chiesto di immetterla due volte).
* 
È consigliabile che la password sia difficile da indovinare, segreta e non comune, sia costituita da almeno 14 caratteri di lunghezza e includa una combinazione di lettere maiuscole e minuscole, numeri e caratteri speciali. La password deve essere immessa nuovamente nei passi successivi.
5. Fare clic su OK. Prendere nota del nome del ruolo utente creato in questo passo per l'uso successivo.
Configurare il database PostgreSQL in un server diverso rispetto a ThingWorx
* 
Questa sezione è facoltativa per gli ambienti di sviluppo, ma deve essere implementata in tutti gli ambienti di produzione.
Per default, il server PostgreSQL viene installato in uno stato bloccato. Il server resta in ascolto solo delle connessioni dal computer locale. Affinché ThingWorx comunichi con il server PostgreSQL, è necessario apportare alcune modifiche di configurazione per impostare PostgreSQL per l'ascolto di connessioni da altri utenti (utente ThingWorx, che per default è twadmin) e/o altri computer (ThingWorx installato in un server diverso).
Per eseguire questi passi, è necessario sapere dove risiede la directory di dati di PostgreSQL. In Windows la cartella dei dati di default è C:\Programmi\PostgreSQL\x.x\data.
Modificare il file pg_hba.conf e aggiungere le righe riportate di seguito in base alla configurazione desiderata.
Se si desidera consentire a tutti gli indirizzi IPv4 di connettersi:
host all all 0.0.0.0/0 md5
Se si desidera consentire solo a un indirizzo IPv4 specifico di connettersi (sostituire <ipAddress> con l'indirizzo IP del computer che effettua la connessione):
host all all <ipAddress>/32 md5
Se si desidera consentire a tutti gli indirizzi IPv6 di connettersi:
host all all ::0/0 md5
Se si desidera consentire solo a un indirizzo IPv6 specifico di connettersi (sostituire <ipv6Address> con l'indirizzo appropriato):
host all all <ipv6Address>/128 md5
Qualsiasi altra combinazione è possibile utilizzando righe di consenso aggiuntive (singoli IP o intervalli di IP) o maschere di sottorete appropriate ai computer che richiedono accesso al database PostgreSQL.
Qualsiasi modifica a questo file richiede il riavvio del servizio di database.
* 
Per informazioni aggiuntive sulla configurazione del file pg_hba.conf, vedere la documentazione relativa a PostgreSQL.
Configurare ed eseguire lo script del database PostgreSQL
Per impostare lo spazio tabelle e il database PostgreSQL, è necessario configurare ed eseguire lo script thingworxPostgresDBSetup.
1. Aggiungere la cartella <postgres-installation>/bin alla variabile di sistema PATH.
2. Creare una cartella denominata ThingworxPostgresqlStorage nell'unità in cui si trova la cartella ThingworxStorage (la directory radice per default). Tenere presente quanto riportato di seguito.
Se si crea la cartella con il comando -d<databasename>, non è necessario utilizzare l'utente PostgreSQL.
È necessario specificare l'opzione -l a un percorso esistente, ad esempio -l D:\ThingworxPostgresqlStorage. Lo script non crea la cartella automaticamente.
La cartella deve avere i diritti di proprietà e di accesso appropriati. È consigliabile che appartenga allo stesso utente che esegue il servizio PostgreSQL e che tale utente disponga del controllo completo. Questo utente è in genere NETWORK_SERVICE, ma può differire a seconda dell'ambiente.
3. Scaricare e aprire lo script thingworxPostgresDBSetup dal package di download del software di ThingWorx. I download di ThingWorx sono disponibili nella pagina PTC Software Download.
4. Se necessario, configurare lo script. Fare riferimento alle opzioni nella tabella riportata di seguito.
Opzioni dello script thingworxPostgresDBSetup
Opzione
Parametro
Default
Descrizione
Esempio
t o -T
tablespace
thingworx
Nome dello spazio tabelle
-t thingworx
-p o -P
port
5432
Numero di porta di PostgreSQL.
-p 5432
-d o -D
database
thingworx
Nome del database PostgreSQL da creare
-d thingworx
-h o -H
host
localhost
Nome dell'host
-h localhost
-l o -L
tablespace_location
/ThingworxPostgresqlStorage
Obbligatorio. Posizione nel file system in cui sono archiviati i file che rappresentano oggetti di database.
-l o -L
-a o -A
adminusername
postgres
Nome dell'amministratore
-a postgres
-u o -U
thingworxusername
twadmin
Nome utente dotato dei permessi di scrittura nel database.
-u twadmin
5. Eseguire lo script.
Configurare ed eseguire lo script dello schema del provider di modelli/dati
Per impostare lo schema del provider di modelli/dati PostgreSQL, è necessario configurare ed eseguire lo script thingworxPostgresSchemaSetup. Questo script imposta lo schema pubblico nel database nell'istanza di PostgreSQL installata in localhost.
1. Scaricare il file thingworxPostgresSchemaSetup.bat dal package di download del software di ThingWorx. I download di ThingWorx sono disponibili nella pagina PTC Software Download.
2. Se necessario, configurare lo script. Fare riferimento alle opzioni nella tabella riportata di seguito.
Opzioni dello script thingworxPostgresSchemaSetup
Opzione
Parametro
Default
Descrizione
Esempio
-h o -H
host
localhost
IP o nome host del database.
-h localhost
-p o -P
port
5432
Numero di porta di PostgreSQL.
-p 5432
-d o -D
database
thingworx
Nome del database da utilizzare.
-d thingworx
-s o -S
schema
pubblico
Nome dello schema da utilizzare.
-s mySchema
-u o -U
username
twadmin
Nome utente per aggiornare lo schema del database.
-u twadmin
-o o -O
opzione
tutti
Sono disponibili le tre opzioni elencate di seguito.
all: imposta gli schemi del provider di modelli e dati nel database specificato.
model: imposta lo schema del provider di modelli nel database specificato.
data: imposta lo schema del provider di dati nel database specificato.
-o data
3. Eseguire lo script.
Configurare platform-settings.json
1. Creare la cartella ThingworxPlatform nella radice dell'unità in cui è stato installato Tomcat oppure impostare una variabile di ambiente di sistema che punta alla cartella. Tenere presente quanto riportato di seguito.
Per specificare la posizione in cui ThingWorx memorizza le proprie impostazioni, è possibile impostare la variabile di ambiente THINGWORX_PLATFORM_SETTINGS sulla posizione desiderata. Assicurarsi che la cartella a cui fa riferimento THINGWORX_PLATFORM_SETTINGS esista e che sia accessibile in scrittura per l'utente Tomcat. Questa variabile di ambiente deve essere configurata insieme alle variabili di ambiente di sistema.
Il server ThingWorx non viene avviato se non ha accesso in lettura e scrittura a questa cartella.
2. Posizionare il file platform-settings.json nella cartella ThingworxPlatform. Questo file è disponibile nel download del software.
3. Aprire il file platform-settings.json e configurarlo in base alle esigenze. Fare riferimento alle opzioni di configurazione in Dettagli di configurazione di platform-settings.json.
* 
Se il server PostgreSQL non è lo stesso del server ThingWorx e si verificano problemi con l'installazione di ThingWorx, esaminare i log di Tomcat e il file platform-settings.json. L'installazione di default presuppone che entrambi i server si trovino nello stesso computer.
(Facoltativo) Crittografare la password di PostgreSQL
Crittografare la password eseguendo i passi descritti in Crittografia delle password.
(Facoltativo) Installazione del package client di PostgreSQL e dell'utente PostgreSQL
Per inviare comandi PostgreSQL dal computer client al server PostgreSQL, utilizzare un utente PostgreSQL. Il package postgresql-client-x.x può essere installato nel computer client. Per informazioni sull'installazione, fare riferimento alla documentazione della distribuzione di PostgreSQL in uso. Questo package include alcuni strumenti di amministrazione, ad esempio psql.
Installare ThingWorx