Performanceproblem mit ODBC

Franz777

Neuer Benutzer
Beiträge
4
Hallo

Ich bin ein DB Neuling und verwende einen vorhandenen Microsoft SQL Server um Benutzerrechte zu verwalten. Meine selbst entwickelte Applikation verwendet ODBC über Qt 4 und SQL Server Native Client 10.0 um mit der Datenbank zu kommunizieren. Dies funktioniert auf 2 von 3 Windows 7 64 bit Rechnern einwandfrei, beim dritten allerdins ist die Kommunikation sehr langsam (eine kleine SQL Abfrage 1-2 Minuten statt <1s bei den anderen Rechnern). Die Datenbank ist sehr klein und Benutzer gibt es auch derzeit nur einen.

Hab schon Firewall und Virenscanner abgeschalten, weiß ehrlich nicht mehr wo ich suchen soll, irgendwelche tipps?

mfg
 
Werbung:
Ist die Datenbank lokal, also auf dem gleichen PC? Wie sieht die Auslastung aus auf dem PC während die Abfrage läuft?

Wie sind übrigens Deine Erfahrungen mit Qt?
 
Hallo,

Nein, die Datenbank ist extern in einem anderen Gebäude ca 2km entfernt. Der Rechner der so langsam geht steht allerdings neben dem auf dem es schnell geht, hab auch schon versucht die Netzwerkbuchse der beiden Rechner zu vertauschen, erfolglos. Zwei Stockwerke unter mir hab ich es auch noch auf einen dritten getestet auf dem es auch schnell geht....

Die Auslastung ist minimal, am Rechner (i7 Quad Core Intel Xeon 2.67GHz mit 12 GB Ram) läuft "nur" Windows 7 Prof 64 bit und meine Software, welche am start ein DB Login mit Benutzernamen und Passwort abfragt und danach ca 20 kleinere SQL Statements abfragt (Benutzerrechnte, darf Bentzer XYZ daten Exportieren etc). Erst danach wird meine Anwendung bedienbar und braucht nennenswerte Ressourcen. Alle 3 getesteten Rechner sind Baugleich, meine Software ist auch immer die gleiche, bei 1 von den 3 gehts wesentlich langsamer (1-2 Minuten pro SQL Abfrage statt <1 Sekunden). Ein paar unterschiede gibts bei der Installierten Software aber die sollten keine wesentlichen Faktoren sein (beim langsamen rechner ist kein Visual Studio oder Matlab installiert etc).

Ich benutze Qt schon seit ca 2 Jahren allerdings hab ich mit Datenbanken eher weniger erfahrung, verwende Qt hauptsächlich als GUI Bibliothek. Wir haben die Datenbankanbindung streng genommen auch nicht selbst programmiert sondern aus Zeitgründen extern Vergeben (wir sind keine DB Spezialisten), es ist also eine Qt basierte Dll die ich in meine Software mit aufgenommen habe. Leider kann ich diese externe Firma nicht wirklich dafür belangen da es mir nicht so aussieht das dies eine Frage der Software ist, bzw. weiß ich nicht wie ich dafür einen Softwaretest schreiben soll.....

Wir versuchen gerade besagten Rechner komplett neu aufzusetzen, ob es funktioniert weiß ich nicht....

mfg
 
Ausser das "Übliche" habe ich da auch keine Idee. Ereignissprotokoll von Windows, eventuell keine Indizes in der DB? Sollte aber bei ner kleinen Datenbank keinen Unterschied machen...
 
Hallo Franz77,

wenn die Rechner alle die gleiche Hardware haben würde ich um Zeit zu sparen ein Image von einem der Funktionsfähigen Rechner ziehen und auf die lahme Kiste spielen. Wenn es dann immer noch nicht geht kann man die Fehlersuche auf die Hardware/Firmware beschränken.

Gruß Charly
 
hallo charly

das ist eine gute idee, heute bekomme ich am abend den neu aufgesetzten rechner vom it service. Falls es dann noch immer nicht geht werde ich deinen Trick probieren. Es wäre halt irgendwie wichtig wenn ich wissen würde woran es liegt da wir das System verkaufen wollen und es sieht halt blöd aus wenn wir die Software mit Systemanforderungen rausgeben und auf solch einen System dann nichts geht....

mfg
 
Werbung:
Schonmal die Neuinstallation (Festplatte) in einen der anderen, baugleichen Rechner gesteckt und dort getestet?
 
Zurück
Oben