Perché SQL Gocce Connessioni

February 21

database SQL si basano su reti e middleware per mantenere i collegamenti. Anche se queste tecnologie sono maturate e sono altamente affidabili, connessioni a volte falliscono. Le reti vanno giù o ottenere sovraccaricati, i tempi di middleware fuori, il software client tiene connessioni troppo lungo o connessioni di tanto in tanto cadere senza un motivo apparente. Ecco alcuni suggerimenti per ridurre al minimo errori di connessione.

Connessioni al database

Prima che un programma client ha il permesso di eseguire query su un server di database, il cliente deve prima stabilire un percorso di comunicazione su una rete locale o pubblica. Entrambe le parti hanno bisogno di condividere i protocolli e le impostazioni di rete in modo corrispondente parlano la stessa lingua. Sul lato server, questi sono impostati tramite le impostazioni di configurazione. Sul client, questi possono essere impostati in un file di configurazione, file di origine dei dati o del driver, o all'interno del programma client.

Dopo sia server che client sono d'accordo sullo stesso protocollo, il programma client invia una richiesta per stabilire una connessione. Questa richiesta di solito comprende credenziali di accesso, come nome utente e password, nonché il nome del database. Se le credenziali corrispondono, una connessione viene stabilita, una query viene eseguita, i dati passa avanti e indietro e poi la connessione viene chiusa.

Problemi di configurazione

La causa più comune di connessioni interrotte comporta configurazioni di server e di rete del cliente. Controllare il server e protocollo client scelte di database e assicurarsi che il protocollo TCP / IP ha la selezione primaria. A meno che non siano necessari named pipe o memoria condivisa per il codice legacy, trasformare questi protocolli off. Assicurarsi inoltre che le selezioni di porta corrispondano su entrambe le configurazioni server e client. Nella maggior parte dei casi, disallineamenti si fermeranno tutte le connessioni, ma questo può a volte causare problemi intermittenti.

Utilizzare connessioni brevi

server Web e programmi client funzionano meglio quando le connessioni al database rimangono abbastanza aperto solo a lungo per ottenere i dati. Aprire la connessione, eseguire la query, ottenere i dati e chiudere la connessione. Qualsiasi cosa più lungo di questo e la tua connessione potrebbe diminuire. La maggior parte dei server di database attuare una sorta di meccanismo di pool di connessioni quindi c'è poco di ritardo ottenere una connessione. Utilizzare queste funzioni a vostro vantaggio.

Problemi di rete

L'hardware fisico e il cablaggio costituisce spesso l'anello meno affidabile tra il client e il server. cavi usurati, schede NIC difettose, router difettoso, manutenzione o altri problemi intermittenti possono forzare il server per disconnettersi. Questi stessi problemi di rete influenzerà la navigazione Web, la stampa e la condivisione di file quando la causa si verifica sul posto di lavoro. Sul lato server, questi fallimenti si verificheranno in modo casuale attraverso molti utenti di database e gli errori apparirà nel registro del server di database.

Timeout query

Lunghe, query complesse che contiene più join tra tabelle molto grandi possono occasionalmente timeout e causare errori di connessione. Nella maggior parte dei casi, il timeout si tradurrà in una sorta di eccezione passati al client, ma in rari casi, questi timeout può causare eccessive connessioni carico del server e forza a goccia. Questi incidenti saranno scritti nel registro del server.