Collegamento a database SQL

Pubblicità

DigiGigi

Nuovo Utente
Messaggi
103
Reazioni
11
Punteggio
36
In ufficio utilizziamo un software che per funzionare si collega ad un database SQL: il software è installato sui singoli pc degli uffici e all'avvio si collega appunto al database SQL che si trova sul server della rete aziendale ed è gestito tramite SQL Server Management Studio (SSMS). Ultimamente capita che quando avviamo il software non riesce a collegarsi al database e da un errore in cui dice "impossibile raggiungere il database": il problema si verifica in orari diversi e non contemporaneamente, quindi può essere che dal mio pc funziona ma sul pc del mio collega no e viceversa. Se riavviamo il pc poi torna a funzionare. I tecnici dicono che può dipendere dalla lentezza della rete o da problemi al nostro server, ma se in quel momento si esegue un ping verso il server si ottiene regolare risposta. Cosa possiamo fare? Grazie e mi scuso se sono stato un po lungo.
 
SQL server di default usa la porta tcp 1433, verifica che ci sia una regola nel firewall di windows del server per consentire tale porta, o in eventuali software di sicurezza antivirus/firewall/ecc
 
Nella stringa di connessione al db viene usato il nome windows o l'indirizzo ip del server? Meglio l'ip. Eventualmente si potrebbe agevolare la risoluzione del nome aggiungendo la corrispondenza nome - ip nel file hosts in c:\windows\System32\drivers\etc
E' vero che a tutto questo dovrebbe pensarci il controller del dominio (se lo usate), magari è solo ora di dargli una riavviata.
 
Ultima modifica:
Cerco di rispondere ad entrambi:
- in Windows defender firewall sul server è presente sia la regola in entrata che in uscita che consente la porta 1433, e anche la regola che consente SQL
- Windows firewall è disattivato per il profilo di dominio e per quello privato, è attivo per quello pubblico
- sul server c'è l'antivirus eset server security che contiene un eccezione per microsoft sql server, ma non ho trovato nulla per la porta 1433
- nella stringa di connessione al database usiamo il nome (NOMESERVER\SQLEXPRESS), ho provato con l'ip ma il problema si presenta lo stesso
- il server è anche il domain controller
- ho visto che sul server ci sono alcuni aggiornamenti di Windows da installare; l'ultimo aggiornamento installato pare sia di maggio 2023
 
- Windows firewall è disattivato per il profilo di dominio e per quello privato, è attivo per quello pubblico
l'antivirus eset che utilizzi integra anche firewall? altrimenti devi lasciare attivo il firewall di windows

- sul server c'è l'antivirus eset server security che contiene un eccezione per microsoft sql server, ma non ho trovato nulla per la porta 1433
metti anche regola accept per la porta 1433 in entrata


- ho visto che sul server ci sono alcuni aggiornamenti di Windows da installare; l'ultimo aggiornamento installato pare sia di maggio 2023
hem, male molto male...


comunque, scarica psping nei pc e quando non si collegano al db, esegui
psping <ipserver>:1433

e vedi se hai risposta....
 
Ho scaricato psping e avviato da riga di comando, quando però provo ad eseguire il ping verso il server mi dice "impossibile eseguire il comando". Forse sbaglio qualcosa
 
scarichi questo
scompatti, vai nella cartella dove hai scompattato e troverai vari file exe tra cui anche psping

da prompt dei comandi vai in quella cartella con il comando CD <percorso>
e a quel punto esegui PSPING <ipserver>:1433

Domandina, visto che non mi sembri molto ferrato, ma non avete un'assistenza informatica, un sistemista, insomma, chi gestisce la parte l'informatica in questo ufficio? Perché dovresti rivolgerti a loro per questo problema
 
Abbiamo una società esterna che ci fa assistenza informatica, solo che nell'ultimo periodo lasciano molto a desiderare sia sulle tempistiche di risposta che sulla risoluzione dei problemi. Per il momento però non sembra ci sia intenzione di cambiare assistenza...
Così io cerco di fare quello che posso e quando posso, da semplice appassionato di informatica.

Sbagliavo io nello scrivere il percorso della cartella.
Ho eseguito il test: se eseguo verso "ipserver:1433" mi dice "il computer remoto ha rifiutato la connessione di rete", se eseguo verso "ipserver" senza specificare la porta mi da regolarmente risposta. In questo stesso momento però, se avvio il programma si collega regolarmente al database.
 
Potresti avere una named instance e quindi non risponde sulla porta default 1433, devi andare in configuration manager di sql server dal server, vedere le configurazioni di rete della tua named instance protocollo TCP/IP e nel gruppo IPAll trovi la porta che è stata assegnata, quella sarà la porta da usare per il controllo se è raggiungibile
 
Potresti avere una named instance e quindi non risponde sulla porta default 1433, devi andare in configuration manager di sql server dal server, vedere le configurazioni di rete della tua named instance protocollo TCP/IP e nel gruppo IPAll trovi la porta che è stata assegnata, quella sarà la porta da usare per il controllo se è raggiungibile
Il campo "Porta TCP" è vuoto, nel campo "Porte dinamiche TCP" c'è 62166
 
Hai un'istanza named suppongo giusto? Dovresti vedere varie sezioni, tra cui una con scritto IPAll, lì vedi la porta TCP assegnata a quell'istanza, dal server prova a scaricare psping e a dare psping 127.0.0.1:62166 e vedi se risponde
 
Hai un'istanza named suppongo giusto? Dovresti vedere varie sezioni, tra cui una con scritto IPAll, lì vedi la porta TCP assegnata a quell'istanza, dal server prova a scaricare psping e a dare psping 127.0.0.1:62166 e vedi se risponde


Allego due screenshots della configurazione che vedo in Configuration Manager.

Ho eseguito psping dal server verso 127.0.0.1:62166 e mi ha dato risposta.

Ho eseguito psping dal server verso 127.0.0.1:1433 e mi dice ancora "Il computer remoto ha rifiutato la connessione di rete".

SQL Server.webpSQL Server porta TCP.webp
 
Pubblicità
Pubblicità
Indietro
Top