Quali sono i motivi per fermare SQL Server?


9

Tutto ciò di cui ho letto è quanto sia potenzialmente dannoso arrestare SQL Server perché crea una cache fredda e risucchia la memoria. Quindi perché qualcuno dovrebbe voler arrestare SQL Server? Se è possibile fornire collegamenti ad articoli in modo che io possa leggere di più in questo, lo apprezzerei davvero!

Questa domanda è stata posta dal mio insegnante. A meno che non sia una domanda trabocchetto, mi ha lasciato perplesso. La sua domanda esatta era:

Conduci ricerche utilizzando Internet e scopri perché qualcuno vorrebbe arrestare SQL Server. Spiega la tua risposta.

Ciò è avvenuto nel contesto in cui abbiamo esplorato come utilizzare SQL Server 2008 R2. Non sono sicuro se stia chiedendo la risposta ovvia o se c'è qualcosa che mi manca.


2
Interruzione di corrente? Aggiornamento del sistema operativo? Migrazione di un server fisico? Fondamentalmente tutti i motivi per cui si desidera riavviare il computer. O per quanto riguarda l'aggiornamento di SQL Server stesso, come hai intenzione di farlo mentre è in esecuzione?
user253751

Risposte:


22

Brent ha elencato alcuni motivi non validi per l'arresto del servizio, ma ci sono anche motivi validi:

  • Riavvio richiesto da un service pack o altro aggiornamento
  • Alcune modifiche alla configurazione (ad es. Modifica dell'account di servizio, modifiche hardware, inizializzazione istantanea dei file, questo elenco potrebbe continuare per settimane)
  • In un cluster, un riavvio per forzare un failover o l'applicazione di una patch continua
  • Patch di Windows

1
Posso suggerire miglioramenti hardware, SSD, memoria, ...?
McNets,

1
Aggiungerei anche l'abilitazione dell'IFI.
Erik Darling,

Se si spostano i database di sistema da C: a un'altra unità, è necessario arrestarlo. C'è un altro motivo valido.
SQL_Deadwood

L'abilitazione dei gruppi di disponibilità Always On nel gestore controllo servizi è un altro.
Kris Gruttemeyer l'

Alcune azioni eseguite in Gestione configurazione SQL Server, ad esempio l'abilitazione di una porta TCP / IP o named pipe, richiedono inoltre un riavvio del servizio.
dlatikay,

19

Perché pensano che ci sia un problema di memoria : SQL Server utilizza tutta la memoria disponibile, fino alla sua impostazione di memoria massima (e anche oltre). Persone inconsapevoli vanno in Task Manager, vedi SQL Server usando molta memoria e pensano, "Deve esserci una perdita di memoria: mi fermerò e riavvierò SQL Server e vedrò cosa succede." Abbastanza sicuro, questo libera molta memoria (perché SQL Server non lo alloca immediatamente per impostazione predefinita), quindi pensano di aver corretto il bug. La prossima cosa che sai, stanno riavviando SQL Server settimanalmente.

Perché pensano che ci sia un problema con la CPU - le query useranno tonnellate di risorse CPU, specialmente nel caso di problemi con lo sniffing dei parametri. Persone inconsapevoli tentano di connettersi a SQL Server senza conoscere DAC (Dedicated Admin Connection), non essere in grado di connettersi ed essere a corto di opzioni. Si riavviano perché i dirigenti sono in piedi dietro di loro, desiderando una soluzione veloce.

Perché hanno sentito che corregge la corruzione - quando le persone incontrano un problema di corruzione, sono spesso disposti a provare qualsiasi cosa per risolverlo.

Perché vogliono che il rollback finisca , uccidono una query e si blocca per un po 'perché non sapevano che il rollback di una query è a thread singolo. Dopo minuti (o ore) di attesa, riavviano SQL Server, pensando che il rollback non sarà necessario al riavvio. Sfortunatamente, si sbagliano e SQL Server continua ad andare avanti con il rollback all'avvio.


"Perché vogliono che il rollback finisca": ricordo di aver imparato quella lezione nel modo più duro.
Michael J Swart,

1

Uno dei motivi potrebbe essere che hai acquistato nuovo hardware e migrato i database su questo nuovo server. Ora stai chiudendo questa istanza del server sql sulla vecchia scatola (insieme alla scatola stessa) poiché vuoi assicurarti che nessuno si connetta più ad essa

Sei passato al cloud, la casella on prem non è più necessaria, viene chiusa, riformattata e riutilizzata (se non troppo vecchia)


1

Un motivo valido è quando nello stesso server sono in esecuzione altri software che richiedono parte della memoria del server SQL, ma che vengono eseguiti solo poche volte al mese.

Ad esempio, mia moglie (un contabile che desidera sapere poco (e non meno) del server SQL necessario per fare il suo lavoro) ha un sistema basato su server SQL utilizzato da 3 persone, inclusa lei per elaborare un set di dati molto grande, lo fanno molte query di annunci pubblicitari, ma alcune volte al mese devono eseguire un motore di calcolo che si trova sullo stesso server e accede al database. Il motore di calcolo ha bisogno di memoria. Non hanno un DBA, non possono ottenere finanziamenti per più hardware, anche se potessero, il reparto IT (che sa meno di SQL rispetto ai contabili) impiegherebbe mesi per configurare il nuovo hardware e un ripristino di SQL server consente loro di fare il loro lavoro come ragionieri. (Il sistema transazionale è separato.)


Potrebbero voler ridurre e aumentare l'impostazione di memoria massima invece di liberare un po 'di RAM.
Magier,

@Magier e qual è il ritorno sull'investimento di un commercialista che impara come farlo invece di fare il suo lavoro .... (E non appena qualcosa cambia, occorrerà impostare numeri magici diversi come tempi diversi.)
Ian Ringrose
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.