Angenommen, Sie haben explizit einen dedizierten Server für Datenbankfunktionen - wie viel Speicher sollten Sie für das Betriebssystem reservieren?
Mir ist klar, dass dies abhängig vom jeweiligen Betriebssystem, der jeweiligen Datenbanksoftware usw. wahrscheinlich etwas variieren wird. Da der Arbeitsspeicher für die Datenbankleistung jedoch so wichtig ist, möchte ich, dass die Datenbank den maximal angemessenen Arbeitsspeicher aufweist, ohne das Host-Betriebssystem zu beeinträchtigen.
Damit
- Was ist eine gute Faustregel für den Anfang?
- Auf welche Indikatoren oder Leistungsindikatoren sollten wir achten, um festzustellen, ob wir zu weit gegangen sind und das Host-Betriebssystem irgendwie von der Datenbank ausgehungert wird?
sql-server
windows
memory
Jeff Atwood
quelle
quelle
Antworten:
Angenommen, Windows und SQL Server ...
Es gibt zwei Denkrichtungen.
Persönlich bin ich in der ersten Gruppe. Windows benötigt normalerweise nur 2-4 Gigs, manchmal bis zu 6.
quelle
Wenn Sie unter Linux Swap ausschalten und der Kernel weiterhin Ihren DB-Prozess beendet, weil nicht genügend Arbeitsspeicher vorhanden ist, ist dies ein guter Indikator dafür, dass Sie das Betriebssystem nicht mehr genügend Arbeitsspeicher haben. Zieh dich zurück, bis das aufhört. Ein paar hundert Megabyte sind normalerweise genug.
quelle
Hier können Sie die Erfahrung von Amazon beim Betreiben von Tausenden von Datenbankservern von Kunden nutzen: Bei Amazon Relational Database Service setzen sie den Innodb-Pufferpool von MySQL auf 3/4 des Arbeitsspeichers des Systems, unabhängig davon, wie viel Arbeitsspeicher vorhanden ist. Fügen Sie bis zu ein paar Megabyte pro Verbindung für verschiedene Abfragepuffer hinzu, und sie überlassen wahrscheinlich 10 bis 20% des Arbeitsspeichers dem Betriebssystem.
quelle
Sie sollten Brent Ozars Einstellung zur Erinnerung lesen . Er hat einige Standardantworten, warum Sie auf Gedächtnis schauen sollten und warum mehr Gedächtnis einer besseren Leistung gleichkommt. Im Allgemeinen sind 4 GB oder 10% für das Betriebssystem reserviert.
quelle