Welche Gründe gibt es, um den SQL Server zu stoppen?


9

Ich habe nur gelesen, wie potenziell schädlich es ist, SQL Server zu stoppen, da dadurch ein kalter Cache erstellt und Speicher belegt wird. Warum sollte jemand den SQL Server stoppen wollen ? Wenn Sie Links zu Artikeln bereitstellen können, damit ich mehr darüber lesen kann, wäre ich Ihnen sehr dankbar!

Diese Frage wurde von meinem Lehrer gestellt. Wenn es sich nicht um eine Trickfrage handelt, bin ich absolut ratlos. Seine genaue Frage war:

Führen Sie Recherchen über das Internet durch und erfahren Sie, warum jemand den SQL Server stoppen möchte. Erkläre deine Antwort.

Dies geschah im Zusammenhang mit der Untersuchung der Verwendung von SQL Server 2008 R2. Ich bin mir nicht sicher, ob er nach der offensichtlichen Antwort fragt oder ob mir etwas fehlt.


2
Stromausfall? Betriebssystem-Upgrade? Migration eines physischen Servers? Grundsätzlich alle Gründe, warum Sie Ihren Computer neu starten möchten. Oder wie wäre es mit einem Upgrade von SQL Server selbst? Wie machen Sie das, während es ausgeführt wird?
user253751

Antworten:


22

Brent hat einige ungültige Gründe für die Einstellung des Dienstes aufgeführt, aber es gibt auch gültige Gründe:

  • Neustart erforderlich für ein Service Pack oder ein anderes Update
  • Bestimmte Konfigurationsänderungen (z. B. Änderung des Dienstkontos, Hardwareänderungen, sofortige Dateiinitialisierung, diese Liste kann Wochen dauern)
  • In einem Cluster ein Neustart, um ein Failover zu erzwingen oder einen fortlaufenden Patch anzuwenden
  • Windows-Patches

1
Kann ich Hardware-Verbesserungen, SSD, Speicher, ... vorschlagen?
McNets

1
Ich würde auch das Aktivieren von IFI hinzufügen.
Erik Darling

Wenn Sie die Systemdatenbanken von C: auf ein anderes Laufwerk verschieben, müssen Sie sie stoppen. Es gibt noch einen anderen gültigen Grund.
SQL_Underworld

Das Aktivieren von Always On Availability Groups im Service Control Manager ist eine andere.
Kris Gruttemeyer

Bestimmte im SQL Server Configuration Manager ausgeführte Aktionen, z. B. das Aktivieren eines TCP / IP-Ports oder benannter Pipes, erfordern auch einen Neustart des Dienstes, um wirksam zu werden.
dlatikay

19

Weil sie glauben, dass es ein Speicherproblem gibt - SQL Server verwendet den gesamten verfügbaren Speicher bis zu seiner maximalen Speichereinstellung (und sogar darüber hinaus). Unwissende Personen gehen in den Task-Manager, sehen, wie SQL Server viel Speicher verwendet, und überlegen, "Es muss ein Speicherverlust vorliegen. Ich werde SQL Server stoppen und neu starten und sehen, was passiert." Sicher genug, das spart viel Speicherplatz (da SQL Server standardmäßig nicht sofort alles zuweist), sodass sie glauben, den Fehler behoben zu haben. Als nächstes starten sie SQL Server wöchentlich neu.

Weil sie glauben, dass es ein CPU-Problem gibt - Abfragen verbrauchen eine Menge CPU-Ressourcen, insbesondere bei Problemen mit dem Parameter-Sniffing. Unwissende Personen versuchen, eine Verbindung zum SQL Server herzustellen, ohne über die Dedicated Admin Connection (DAC) Bescheid zu wissen. Sie können keine Verbindung herstellen und haben einfach keine Optionen mehr. Sie werden neu gestartet, weil die Führungskräfte hinter ihnen stehen und schnell eine Lösung suchen.

Weil sie gehört haben, dass es Korruption behebt - wenn Leute auf ein Korruptionsproblem stoßen, sind sie oft bereit, alles zu versuchen, um es zu beheben.

Weil sie möchten, dass ein Rollback abgeschlossen wird - sie beenden eine Abfrage und sie bleibt eine Weile im Rollback, weil sie nicht wussten, dass das Zurücksetzen einer Abfrage Single-Threaded ist. Nach Minuten (oder Stunden) des Wartens starten sie den SQL Server neu und denken, dass das Rollback nicht erforderlich ist, wenn es erneut gestartet wird. Leider liegen sie falsch und SQL Server fährt beim Start mit dem Rollback fort.


"Weil sie wollen, dass ein Rollback beendet wird": Ich erinnere mich, dass ich diese Lektion auf die harte Tour gelernt habe.
Michael J Swart

1

Ein Grund könnte sein, dass Sie neue Hardware gekauft und die Datenbanken auf diesen neuen Server migriert haben. Sie fahren jetzt diese SQL Server-Instanz auf der alten Box (zusammen mit der Box selbst) herunter, da Sie sicherstellen möchten, dass niemand mehr eine Verbindung dazu herstellt

Sie sind in die Cloud gewechselt, die On-Prem-Box wird nicht mehr benötigt, sie wird heruntergefahren, neu formatiert und für andere Zwecke verwendet (wenn nicht zu alt).


1

Ein gültiger Grund ist, wenn auf demselben Server andere Software ausgeführt wird, die einen Teil des Speichers benötigt, über den SQL Server verfügt, der jedoch nur einige Male im Monat ausgeführt wird.

Zum Beispiel hat meine Frau (eine Buchhalterin, die so wenig (und nicht weniger) über SQL Server wissen möchte, die für ihre Arbeit benötigt wird) ein SQL Server-basiertes System, das von drei Personen verwendet wird, einschließlich ihr, um einen sehr großen Datensatz zu verarbeiten Viele Ad-Hock-Abfragen, aber einige Male im Monat müssen sie eine Berechnungs-Engine ausführen, die sich auf demselben Server befindet und auf die Datenbank zugreift. Die Berechnungsmaschine benötigt Speicher. Sie haben keinen DBA, sie können keine Finanzierung für mehr Hardware erhalten, selbst wenn sie könnten, würde die IT-Abteilung (die weniger über SQL weiß als die Buchhalter) Monate brauchen, um neue Hardware einzurichten und SQL zurückzusetzen Mit dem Server können sie ihre Arbeit als Buchhalter erledigen. (Das Transaktionssystem ist separat.)


Möglicherweise möchten sie stattdessen die maximale Speichereinstellung verringern und erhöhen, um etwas RAM freizugeben.
Magier

@Magier und wie hoch ist der Return on Investment einer Buchhalterin, die lernt, wie man das macht, anstatt ihren Job zu machen ... (Und sobald sich etwas ändert, müssen unterschiedliche magische Zahlen als unterschiedliche Zeiten festgelegt werden.)
Ian Ringrose
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.