keine Datenbankverbindung aus Batch

trixi

New Member
Hallo,

leider habe ich über die Suchfunktion mein Problem nicht gefunden :,-(

In dem Unternehmen, in dem ich arbeite, wurde vor kurzem MSSQL 2005 eingeführt. Seitdem bekommen PHP Scripts, die über geplante Tasks aufgerufen werden, keine Verbindung zur Datenbank, spricht der Connection String ist leer. Lasse ich das gleiche Script im Browser ablaufen, funktioniert alles wie gehabt.

Der User, unter dem die geplanten Tasks laufen, hat Administratorrechte. Die Firewall blockt die Anfragen nicht.

Gibt es vielleicht irgendeine Einstellung in MSSQL 2005, die vergessen wurde?

MSSQL Server:
Microsoft Server 2003 SP2
MSSQL 2005

Webserver:
Microsoft Server 2003 SP2
IIS V6.0
PHP Version 5.2.6.

Ich hoffe, jemand von Euch weiß Rat. ;-)

Grüße
Trixi
 
Das PHP-Script im geplanten Task läuft unter welchem User? Hat der auch auf dem SQL-Server entsprechende Rechte, z.B. auf die DB zuzugreifen?
Authentifiziert ihr euch am SQL-Server mit einem Windows-User oder sind auf der DB eigene SQL-User angelegt worden?
Was soll das heissen, der connection String ist leer? :confused:
 
Das Script läuft unter einem User, der speziell für die geplanten Tasks angelegt wurde. Er besitzt Domainadminrechte.

Um sich mit der Datenbank zu verbinden gibt es einen speziellen SQL Datenbankuser, also die Verbindung wird nicht mit einer Windowskennung aufgebaut.

Beim Aufruf der PHP Funktion mssql_connect bekommt bei Erfolg eine Verbindungskennung zurück und im Fehlerfall FALSE. In diesem Fall ist es also keine Vebrindungskennung sondern nur FALSE. Gut, da habe ich mich etwas ungenau ausgedrückt, das tut mir leid... ;-)

Wie gesagt, mit MSSQL2000 haben die ganzen Batches noch funktioniert. Seit der Umstellung nicht mehr, ich muss jeden morgen, solange noch keine Lösung gefunden wurde, die Batches per Hand anstossen (d.h. im Browser aufrufen). LOL
 
Wenn was nicht funktioniert, muss es Fehlermeldungen geben. Entweder als Ausgabe des Scripts, in den Logs des DB-Servers oder in irgendwelchen internen Variablen des Datenbank-Moduls von PHP.

Wenn diese nicht sichtbar werden, muss man entweder das Loglevel erhöhen oder die entsprechende Funktion zur Ausgabe der PHP-Fehlermeldungen benutzen.

Ohne Fakten ist das nichts als ein Fischen im Trüben. Und nur Logs oder Meldungen sind Fakten.
 
So weit war ich auch schon...:-(

Naja, der MSSQL 2005 Experte ist kontaktiert, mal sehen, was dabei herauskommt.

Danke für die Ideen, vielleicht wird's ja noch was...;-)
 
Back
Top