sql >> Databasteknik >  >> RDS >> Sqlserver

PHP 5.3 känner inte igen Native Client för att ansluta till MS SQL

Det visade sig vara ett behörighetsproblem.

Jag ändrade i php.ini alternativet fastcgi.impersonate till 0 och försökte med olika applikationspoolidentiteter. Det fungerade som lokalt system. Detta är ett konto med fler användarrättigheter än nätverkstjänsten eller lokaltjänstkontot. Tänk dock på att att köra en applikationspool under ett konto med utökade användarrättigheter utgör en hög säkerhetsrisk. För ytterligare referenser om konton och hur man konfigurerar, kolla in denna artikel:

Tjänstanvändarkonton a> Tjänstsäkerhet och åtkomsträttigheter

Jag bestämde mig för att ställa tillbaka den till Network Service och laddade ner Process Monitor *. Jag använde den sedan för att övervaka processen w3wp, vilket visade mig att detta fick åtkomst nekad på en registernyckel där sökvägen till sqlncli.dll är lagrad.

HKLM\Software\ODBC\ODBCINST.INI\SQL Native Client 10.0

Så jag öppnade RegEdit och hittade den nyckeln

Jag högerklickade -> Behörigheter och lade till nätverkstjänst i listan och gav den läsbehörighet.

Återvunnen apppoolen och den fungerar nu!

Hoppas detta hjälper!Federico

*Det finns en mycket bra steg-för-steg-artikel om hur man använder processmonitor här.

http://www.iislogs.com/articles/processmonitorw3wp/



  1. Definiera tabell- och kolumnnamn som argument i en plpgsql-funktion?

  2. Hur sparar man flera inmatningar av rader i samma kolumn i databasen?

  3. Varför fungerar inte postgresql 9.1 med rails 3.0?

  4. Något sätt att SQLBulkCopy infoga eller uppdatera om det finns?