Avatar billede shylle Nybegynder
08. september 2004 - 13:10 Der er 8 kommentarer

Performance vedr. named pipes vs. TCP/IP

Jeg har to forskellige servere. En databaseserver og en applikationsserver.

Før kørte databasen på en Windows Server 2000, men nu er den blevet flyttet til Windows Server 2003.

Dette skift medførste følgende ændring i min connectionstring:

Windows Server 2000:
"DRIVER={SQL Server};SERVER=xxx.xxx.xxx.xxx;UID=xxx;Password=xxx;DATABASE=dbname"

Windows Server 2003
"DRIVER={SQL Server};SERVER=xxx.xxx.xxx.xxx;UID=xxx;Password=xxx;DATABASE=dbname;Network=DBMSSOCN;"

Forskellen er Network parameteren, der bliver sat til DBMSSOCN, hvilket betyder der køres over TCP/IP, i stedet for på 2000, hvor der default kørtes named pipes.

Egentlig ser det hele ud til at køre fint, men jeg har fundet ud af at ved mere krævende scripts, der kører over f.eks. 10 minutter, går resten af applikationen i knæ og kommer ofte med scripttimeouts på alle dens sider, mens scriptet kører videre.

Dette er sket siden skiftet til Windows Server 2003, der åbenbart af sikkerhedsmæssige hensyn kræver at man kører over TCP/IP.

Så mit spørgsmål er, hvordan jeg får på Windows Server 2003 til at acceptere en database connection, der laves med Named Pipes i stedet for TCP/IP.

Er der nogen, der ved det?

PS. Jeg tror ikke, de ændringer, der skal til, kan laves fra noget der har relation til SQL Server 2000, idet jeg har sammenlignet opsætningen af SQL Server 2000 på Windows Server 2000 og Windows Server 2003 og de ser ikke ud til at være forskellige.
Avatar billede arne_v Ekspert
08. september 2004 - 13:47 #1
Du konfigurerer SQLServer transport med SVRNETCN utilityen (søg efter SVRNETCN.EXE
den ligger nok i tools\binn).
Avatar billede shylle Nybegynder
08. september 2004 - 13:55 #2
Her fremgår 'Named Pipes' og 'TCP/IP' som enabled protocols. Så det er vel godt nok.

Jeg har siden jeg skrev det første indlæg også ændret en setting under Local Security Policies; nemlig under Local Policies > Security Options

Her har jeg disabled 'Network access: Restrict anonymous access to Named Pipes and Shares'

Men dette hjalp heller ikke :-(

Andre bud?
Avatar billede arne_v Ekspert
08. september 2004 - 14:36 #3
Hvis TCP/IP transport er aktiveret og hvis du ikke angiver at der skal bruges
TCP/IP - hvad sker der så når du connecter ?
Avatar billede shylle Nybegynder
08. september 2004 - 14:45 #4
Ja, det burde jeg have nævnt. Beklager, men der får jeg:

[Microsoft][ODBC SQL Server Driver][Named Pipes]Access denied.
Avatar billede arne_v Ekspert
08. september 2004 - 15:08 #5
Og der er oprettet server login og database user på den nye SQLServer
svarende til den gamle ?

Og der er ikke mulighed for at skifte til integrated seurity ?
Avatar billede shylle Nybegynder
08. september 2004 - 15:17 #6
Spørgsmål 1:
Ja, for connectionstrengen virker jo fint med TCP/IP

Spørgsmål 2:
Det ved jeg ikke lige... Hvor gøres dette?
Avatar billede arne_v Ekspert
08. september 2004 - 15:25 #7
re 2)

smækker en

Trusted_Connection=yes;

på connection string (men forudsætter at det brugernavn som applikationen
kører under har adgang)
Avatar billede shylle Nybegynder
08. september 2004 - 15:44 #8
ok, jeg prøvede at køre uden 'Network=DBMSSOCN' i connectionstrengen, men med 'Trusted_Connection=yes' i stedet.

Det gav:

[Microsoft][ODBC SQL Server Driver][Named Pipes]Access denied.

Da jeg så kørte med både 'Network=DBMSSOCN' og 'Trusted_Connection=yes'  i connectionstrengen fik jeg:

[Microsoft][ODBC SQL Server Driver][SQL Server]Login failed for user '(null)'. Reason: Not associated with a trusted SQL Server connection.

Så jeg kører i hvert fald ikke integrated security lige nu, og jeg tror heller ikke det vil hjælpe at gøre det, idet den giver mig 'Access denied' før den giver mig 'Login failed for user'.

Er du ikke enig? Hvis du ikke er, vil jeg prøve at få lavet en bruger på applikationsserveren. Skal denne bare have samme navn som databasebrugeren? Eller hvordan skal det fikses?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester