MS-SQL-SERVER, PHP, PDO ODBC: Login fehlgeschlagen für Benutzer
Ich versuche die Verbindung über einen string:
odbc:Driver={SQL Server Native Client 11.0};Server=(localdb)\v11.0;Database=test;uid=sa;password=123321;
Ergebnis: SQLSTATE[28000] SQLDriverConnect: 18456 [Microsoft][SQL Server Native Client 11.0][SQL Server]Login failed for user 'sa'.
Wenn ich versuche eine Verbindung über die Windows-ODBC-Datenquellen-Administrator die Verbindung erfolgreich ist.
Was das problem sein könnte?
- Auf einem verwandten beachten, Sie erscheinen mit Windows, so das SQLSRV Erweiterung, die bietet auch eine PDO-Treiber, könnte eine interessante alternative zu ODBC.
- Ich habe versucht, aber es finden nicht einmal eine Instanz, weder (localdb)\v11.0 oder Instanzen habe ich mit cmd/sqllocaldb-Befehle
Du musst angemeldet sein, um einen Kommentar abzugeben.
Netzwerk Benutzer " sa' keine Berechtigung für den Microsoft SQL-Server.
Der beste Weg, um Netzwerk-Benutzer den Zugriff auf Microsoft SQL Server erstellen Sie eine Windows-Gruppe (zum Beispiel EGUSERS) und es ermöglichen, die Windows-Gruppe Server Zugriff auf die Security-Logins innerhalb von Microsoft SQL Server.
Legen Sie alle Netzwerk-Benutzer, die Zugriff auf Microsoft SQL Server an die Windows-Gruppe (EGUSERS).
telnet 127.0.0.1 1433
ODER verwenden Sie tools(osql,sqlcms,...)Prüfen Sie, ob Sie das Recht haben, Authentifizierungsmodus auf den MSSQL-Server:
https://msdn.microsoft.com/en-us/library/ms188670.aspx
Auch Sie haben zwei Möglichkeiten, die Verbindung zu MSSQL in PHP/PDO mithilfe der PHP_PDO_ODBC-Erweiterung, die verwendet die ODBC-Treiber gegeben, die in der connectionstring oder verwenden Sie PHP_PDO_SQLSRV_xx_TS oder PHP_PDO_SQLSRV_xx_NTS-Erweiterung, die Sie hier finden können (nur für 32bit-PHP!) https://www.microsoft.com/en-us/download/details.aspx?id=20098 oder verwenden Sie die inoffizielle 64bit hier http://robsphp.blogspot.nl/2012/06/unofficial-microsoft-sql-server-driver.html
Verbindungszeichenfolge bei Verwendung von PHP_PDO_SQLSRV_xx_(N)TS-Erweiterung:
Verbindungszeichenfolge bei Verwendung von PHP_PDO_ODBC Erweiterung:
Beim testen eine einfache Abfrage, die zurückgesendet 66 Datensätze mit PHP_PDO_ODBC Erweiterung nahm ~500 MS (für alle drei MSSQL-ODBC-Treiber), aber bei der Verwendung der 64bit(!) PHP_PDO_SQLSRV_TS es dauerte ~5000ms. 10 mal langsamer! Noch nicht ausprobiert 32bit oder die NTS Variante.
Meinem dev PC ist Windows 7 SP1 mit WAMPx64 PHP 5.5.12 und ich PHP_PDO_SQLSRV_55_TS