Ich habe auf einem 2-Server-HA-Cluster ein merkwürdiges Verhalten festgestellt und gehofft, dass jemand meinen Verdacht bestätigen oder vielleicht eine andere Erklärung anbieten kann ... Hier ist mein Setup:
- Eine SQL 2012 SP1-Installation mit zwei Servern
- SQL AlwaysOn HA wurde für einige Datenbanken aktiviert
- CPUs sind 2,4 GHz, 4 Kerne
- RAM ist 34 GB (es ist eine AWS-Instanz, daher die ungerade Zahl)
- Die Ressourcennutzung ist relativ gering - jeder Server verfügt über mehr als 14 GB freien Speicher und SQL ist nicht auf die zu verwendende Speicherkapazität beschränkt
- Die Zugriffszeit auf die Festplatte ist in Ordnung - sie überschreitet selten 15 ms / Lese- oder Schreibzugriff
- Datenbanken sind nicht groß - 1 GB, 1,5 GB, 7,5 GB
- Der SQL Server-Prozess verwendet 16 GB Private Bytes und 15 GB Working Set
Insgesamt werden keine Ressourcenprobleme festgestellt. Nun zum merkwürdigen Teil. SQL wird nicht neu gestartet (der Prozess wurde fast 6 Monate lang ausgeführt), aber es scheint, dass der Zähler für die Seitenlebenserwartung alle ~ 50 Tage auf (fast) 0 fällt. Bis zu diesem Zeitpunkt steigt er stetig an, keine Tropfen. Hier ist ein perfektes Diagramm:
Wenn ich mir die Zählerdaten ansehe (ich habe nicht die genaue Zahl, nur eine stündliche Aggregation), scheint der PLE-Zählerwert jedes Mal (zumindest jedes Mal, wenn ich Daten für habe) ungefähr 4.295.000 Sekunden (ungefähr 50 Tage) zu erreichen.
Meine verrückte Theorie ist, dass die PLE-Zahl in Millisekunden als vorzeichenloses Long-Int (mit einem Limit von 4.294.967.295) gehalten wird und nach 49,71 Tagen entweder aufgrund des Designs oder eines Fehlers zurückgesetzt wird. Dies würde das Verhalten der beiden Server und das identische Muster erklären. Oder es könnte etwas völlig anderes sein und ich mache einfach keinen Sinn. :)
Hat jemand so etwas gesehen oder kann er dieses Verhalten erklären?
PS Ich habe diesen Beitrag gesehen, aber mein Fall scheint etwas anders.
PPS Dies ist ein repost - ich ursprünglich geschrieben hier , aber das Publikum war hier beraten , besser geeignet.
Vielen Dank!
Antworten:
Ich habe dieses Verhalten auf einem Client-Standort festgestellt, auf dem SQL2012 SP1 ausgeführt wird. Die Besonderheiten hier waren NUMA und PLE, die ein "Sägezahn" -Muster zeigten, jedoch in einem stündlichen Zyklus.
Einige Threads in SQLServerCentral haben dies behandelt:
http://www.sqlservercentral.com/Forums/Topic1415833-2799-1.aspx http://www.sqlservercentral.com/Forums/Topic1424826-2799-1.aspx
Das Endergebnis war, dass das Anwenden von SP1 CU4 das Problem zu beheben schien.
CU4 enthält das unschuldig aussehende Update. Für SQL Server 2012 Memory Management KB2845380 ist ein Update verfügbar
Einen Versuch wert?
quelle