![]() |
Datenbank: SQL Server • Version: 2005 • Zugriff über: ADO
SQL Server läuft Speicher Voll
Hallo,
Ich hoffe hier kann mir jemand einen Tipp geben. Ich habe das Problem das wenn ich meine Anwendung öffne und eine Abfrage mache die über ca. 5000 Datensätze geht oder eine andere die über knapp 60000 Datensätze geht mir an meinem Server W3K SQL 2005 der Speicher vom SQLSrv.exe voll läuft. Wenn ich die Connection,Das Programm zu mache ist der Speicher noch da und nicht freigegeben,obwohl ich in der Anwendung alle Datamodule usw Free mache. Der Speicher geht bis max. 1 GB voll. Kann mir da jemand helfen was ich ev. in der Anwendung ändern kann. Vielen Dank. |
Re: SQL Server läuft Speicher Voll
Limitiere die Datenmenge und hole diese dynamisch bei Notwendigkeit
|
Re: SQL Server läuft Speicher Voll
Hi,
Das habe ich auch schon in betracht gezogen,aber da läuft der Speicher ja dann nur langsamer voll. Ich habe so den Verdacht das er nach dem Query aufruf und ausgeben der Datensätze,wenn ich dann die Query schliesse den Speicher im SQL Server nicht Freigibt! Aber das würde ja dann am SQL selber liegen? mfg |
Re: SQL Server läuft Speicher Voll
Wenn du die Datenmenge limitierst dürfte auch der Datenverbrauch des Servers sinken. Wieviel Speicher gestehst du dem Server zu (auto?).
Das Schließen des Programmes schließt ja nicht den Query am Server |
Re: SQL Server läuft Speicher Voll
Hi,
hab gerade geschaut. Ich hbae noch die Standard Settings drin: Automatisch ist nicht drin. Minimum Server Memeory in MB = 0 Maximum Server Memeory in MB = 2147483647 Das "in MB " steht in Klammern. Das wären ja dann max. ca.naja mehr wie Terrabytes. Kann das sein? MAx Server Memory ist 2048 MB. Danke |
Re: SQL Server läuft Speicher Voll
Zitat:
Warum brauchst du mehr als 60000 Datensätze? |
Re: SQL Server läuft Speicher Voll
Ja stimmt habs getestet.
Mann kan nmehr einstellen aber er nimmt logischer weise nur das Max an Physikalischem Ram. Die komme in ein Grid rein zum einsehen. Frag net so wolle ses halt haben. Mir gefällt es a net so dolle. I habe schon eine Top 10 abfrage reingemacht das kam net gut an ! Tjs User halt . Und unser eins darf sich dann mit den Server Folgen rum ärgern. Hast du ev. eine bessere idee wie ich die 60t DS selecten kann ?? EV.. in ein normales Grid rein und die SQL Verbindung dann aufräumen ? mfg |
Re: SQL Server läuft Speicher Voll
Dann lade immer nur ein bisschen mehr als im Grid angezeigt werden kann und lade beim Scrollen nach.
|
Re: SQL Server läuft Speicher Voll
Hi,
das wäre ne Idee,aber merkt das der USer nicht ,also gibt es beim Scrollen verzögerungen? danke |
Re: SQL Server läuft Speicher Voll
Hallo renekr,
begrenze den Speicher im SQL-Server doch auf z.B. 750MB. Darüber hinaus wird der SQL-Server dann nicht mehr gehen. Er wird dann selber dafür sorgen, dass er Speicher anders benutzt, wenn er das braucht. Dein Gesamtsystem bleibt dann stabiel. Ich würde nicht anfangen im Programm große Verränkungen zu machen. Da baust du dir eventuell nur böse Fehler ein. Müssen den wirklich immer alle Zeilen angezeigt werden? Bei solchen Problemen begrenze ich standardmäßig die Ausgabe auf z.B. 100 Datensätze. Diese Begrenzung kann der Benutzer aufheben. Wenn es nicht nötig ist wird aber das DBGrid schnell geladen. Dies geht natürlich nur wenn du eine Sortierung angeben kannst, in der die eventuelle Wichtigkeit der Datensätze steht. Damit eben die Zeilen, die der User vermutlich gerade braucht auch die ersten 100 Zeilen sind. Wie wäre es vielleicht mit einem Zeitstempel? Wie auch immer, ich würde da auf dem Server Einstellungen verändern. In deiner Software wäre ich da vorsichtig. Edit: Der SQL-Server gibt seinen Speicher frei, wenn er das für richtig hält. Also erst dann wenn er beendet wird. Du kannst nur entscheiden wo das Maximum liegen soll. Gruss Thorsten |
Re: SQL Server läuft Speicher Voll
Hi,
Danke. Die DS werde schon nach den Letzten Einträgen sortiert, ( ist so ein art Logbuch ),und Lagersystem( da anch Bezeichnung aber nur isngesamt knapp 5000 DS ) Werde den Speicher mal anpassen und schaun was sich ergibt. Danke. |
Re: SQL Server läuft Speicher Voll
Läuft auf dem Server noch irgendwas anderes relevantes? Falls nein so lass doch den Server seinen Speicher. Dieser wird z.B. verwendet um alle Indizes im RAM zu halten um wirklich schnell zu sein. Was bringt dir es wenn er nur z.B. 1GB verwendet und dafür bei größeren Aktionen langsam wird?
|
Re: SQL Server läuft Speicher Voll
Hallo,
ich habe in einem Fall eine Begrenzung z.B. auf "Daten der letzten x Tage", Der Nutzer kann die natürlich selber festlegen durch Start Start/Ende Ende Heiko |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:45 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz