L-iżviluppaturi għadhom qed ifittxu l-post fejn string ta' konnessjoni, URL JDBC jew daħla f'tnsnames.ora tagħżel il-VPN. Dan il-post ma jeżistix. It-tunnel jinbena mis-sistema operattiva jew minn klijent tal-fornitur li jirreġistra adapter virtwali, u kull librerija tad-database fuqha tuża s-saff tas-socket li jirriżulta. String ta' konnessjoni jsemmi host, port u kredenzjali, u dan huwa l-vokabularju kollu.

Mitu: string ta' konnessjoni tista' tagħżel tunnel

Id-driver jiftaħ socket TCP lejn host u port. M'għandux API biex jerfa' tunnel, m'għandux qasam għal profil tat-tunnel u m'għandux mod kif jawtentika ma' gateway VPN.

Għalhekk l-għodod iġibu ruħhom bl-istess mod ladarba teżisti rotta. SSMS, DBeaver, Eclipse Data Tools u sqlcmd sempliċi jaġixxu bħallikieku s-server kien fuq in-netwerk lokali, għax mill-perspettiva tas-socket hekk hu. L-adapter virtwali għamel is-subnet tad-database aċċessibbli, u d-driver qatt ma jaf kif.

Dan jispjega wkoll għaliex string ta' konnessjoni ma tistax issewwi tunnel maqtugħ. Meta l-link imut, id-driver jirrapporta timeout jew żball ġenerali tan-netwerk, u l-kodiċi tal-applikazzjoni li jqis dan bħala problema ta' query jerġa' jtenni s-saff żbaljat għal dejjem.

Erfa' t-tunnel qabel ma jgħaddi d-driver

Qabbad il-VPN fil-livell tas-sistema operattiva, skont l-istruzzjonijiet tal-fornitur jew tat-tim tan-netwerk, u mbagħad biss iftaħ l-għodda. Fil-prattika dan ifisser li teżisti rotta lejn is-subnet tad-database qabel ma d-driver jissolva l-isem tal-host.

Żomm is-superviżjoni tat-tunnel barra l-applikazzjoni. Servizz PHP jew Java li jipprova jerfa' l-link hu stess jinkorpora l-imġiba ta' fornitur wieħed fil-kodiċi tan-negozju, u kull failover isir rilaxx tal-applikazzjoni. Superviżur li jippossjedi t-tunnel, jissorveljah u jerġa' jibdieh huwa kwistjoni separata mill-passaġġ tal-query.

Iċċekkja r-rotta qabel ma tagħti l-ħtija lid-driver: jekk il-host ma jissolviex jew il-port ma jweġibx mill-shell, l-ebda string ta' konnessjoni ma tbiddel dan.

Mitu: falliment ta' awtentikazzjoni Windows ifisser li r-rotta hija miksura

L-awtentikazzjoni Windows permezz ta' VPN ta' spiss tfalli bi żball li jidher bħal ħsara tan-netwerk, filwaqt li r-rotta hija tajba. Meta l-kont jappartjeni għal dominju ieħor u l-laptop ma jistax jingħaqad miegħu, ibda l-klijent b'kredenzjali espliċiti minflok bl-identità tas-sessjoni tad-desktop.

runas /noprofile /netonly /user:CORP\dbreader "C:\Program Files (x86)\Microsoft SQL Server Management Studio 18\Common7\IDE\Ssms.exe"

Is-swiċċ /netonly iżomm dawk il-kredenzjali għall-awtentikazzjoni remota biss. Ikkonferma x'irċieva tassew is-server b'SELECT SUSER_SNAME() minflok ma tafda d-djalogu tal-konnessjoni. Huwa rrappurtat li l-ħażna tal-kredenzjali għall-indirizz tas-server fil-Windows Credential Manager taħdem għal SSMS iżda mhux dejjem għal servizz li jaħdem taħt kont ieħor, għalhekk iċċekkja liema identità tuża l-proċess qabel ma tbiddel il-login.

Il-latenza tbiddel cursor tan-naħa tas-server fi timeout

Cursor tan-naħa tas-server jitlob lid-database żżomm ir-riżultat u tieħu bi ftit ftit, li tbiddel riżultat kbir wieħed f'ħafna vjaġġi żgħar l hemm u l hawn. Fuq LAN dan huwa rħis. Permezz ta' tunnel b'għexieren ta' millisekondi ta' latenza miżjuda, l-istess query tista' taqbeż it-timeout tal-kmand mingħajr ma tittrasferixxi kważi xejn.

Aqleb għal cursor tan-naħa tal-klijent, jew għolli d-daqs tat-tiġbid u ġġemma' l-irjieħ fi gruppi, u n-numru ta' vjaġġi jinżel. L-ostaklu huwa n-numru ta' skambji, mhux il-veloċità nominali tal-link, għalhekk il-kejl tat-throughput iqarraq bik filwaqt li l-kejl tal-vjaġġi ma jagħmilx hekk. Ipprova bl-akbar sett ta' riżultati li l-utenti tiegħek fil-fatt iġibdu, mhux b'query ta' ringiela waħda li terġa' lura mill-ewwel. Jekk it-timeout jiċċaqlaq iżda ma jisparixxix, għolli t-timeout tal-kmand u d-daqs tat-tiġbid flimkien u kejjel mill-ġdid.

L-istess aritmetika tapplika għal ORM li jitkellmu ħafna u għal kull klijent li joħroġ dikjarazzjoni waħda għal kull ringiela. Jekk il-pjan tal-query huwa tajjeb u t-trasferiment żgħir, għodd l-iskambji tan-netwerk qabel ma taġġusta d-database.

Iċċekkja l-port, l-istanza u l-filtru lokali

Istanza msemmija tisma' fuq port dinamiku, għalhekk ikkonferma l-port minflok ma tassumi 1433. Fuq istanza default il-valur jinqara mill-valur tar-reġistru TcpPort taħt iċ-ċavetta SuperSocketNetLib tal-istanza. Għal Oracle, ivverifika li l-host f'tnsnames.ora jissolva, li l-indirizz iwieġeb u li l-port tas-semmiegħ huwa permess; 1521 huwa default komuni, mhux garanzija.

Imbagħad eskludi l-lista ta' aċċess tat-tunnel stess u, fl-aħħar, antivirus lokali jew firewall tal-host li jimblokka l-konnessjoni anki meta l-klijent u s-server huma l-istess magna. Irreġistra l-istadju li jfalli qabel ma tbiddel il-konfigurazzjoni, għax is-soluzzjoni tal-ismijiet, l-aċċessibbiltà TCP u TLS jew il-login kull wieħed ifalli b'messaġġ differenti.

Ikteb l-istadju fit-ticket. Inkella l-persuna li jmiss se terġa' tagħmel l-istess tiftixa tas-string ta' konnessjoni li bdiet dan kollu.

Artikli relatati