Buongiorno a tutti,
Vorrei sottoporvi uno scenario che immagino derivi da mal configurazione del server (o limiti della tecnologia utilizzata):
Configurazione 1 funzionante
C’è un’applicazione A:8080 Java in ambient Centos che usa un db Postgres come db principale e tramite driver jdbc interroga delle viste su un db Microsoft SQL installato su ambiente Linux
Configurazione 2 non funzionante
Oltre all’applicazione A:8080 (che è in run) faccio partire l’applicazione B:8081 che ha un proprio db Postgres e sempre tramite driver jdbc interroga lo stesso db sql di app A:8080 e tutto sembra funzionare. Se stoppo una delle due app e provo a farle ripartire questa non riparte e si schianta anche l’altra.
Ho provato diverse soluzioni: connessione all’sql con utente uguale per app A e app B, utenti diversi, clonato la macchina virtuale e fatto girare una app per VM.
Lo scenario si sviluppa così:
1 app A run app B stop
2 app A run app B run (riesco a stabilire la connessione con il
Db anche nell’app B)
3 accedo ai dati da appA, accedo ai dati da app B
4 stop app B
5 start app B (non parte ) e app A(va in crash per la connessione al DB)
6 l’unico modo per far ripartire o appA o app B è ripristinare la VM, il solo riavvio della macchina non sortisce effetto, la connessione viene rifiutata.
L’errore recepito è questo:
com.microsoft.sqlserver.jdbc.SQLServerException: Accesso non riuscito per l'utente 'utenteTest'. ClientConnectionId:1e2e6d08-d6e7-4da9-b949-fa347394727d
ho provato a simulare anche con due script Python
import pymssql
conn = pymssql.connect('dbinfinity', '<username>', '<password>', 'database')
cursor = conn.cursor(as_dict=True)
conn.close()
e l’errore ricevuto è il seguente:
pymssql._mssql.MSSQLDatabaseException: (18456, b"Accesso non riuscito per l'utente 'utenteDB'.DB-Lib error message 20018, severity 14:\nGeneral SQL Server error: Check messages from the SQL Server\nDB-Lib error message 20002, severity 9:\nAdaptive Server connection failed (dbinfinity)\nDB-Lib error message 20002, severity 9:\nAdaptive Server connection failed (dbinfinity)\n")
Purtroppo non ho esperienza di server sql e non ho accesso se non come utente al database indicato.
Secondo voi ci sono dei tentativi da poter fare lato configurazione o è un vincolo intrinseco nel tipo di connessione stabilita (immagino pool)?
Grazie