Le, string ta' konnessjoni ma tistax tibda t-tunnel VPN tiegħek
Il-VPN hija proprjetà tas-sistema operattiva jew ta' klijent, qatt tad-driver. Erfa' l-ewwel it-tunnel, għaddi l-kredenzjali tad-dominju b'netonly, imbagħad iċċekkja l-vjaġġi l hemm u l hawn tal-cursor.
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.