Ho un'installazione di circa 10 giorni di WinServer2012R2 e SQL Server Express 2016 per i test. Sono l'unico utente su questa macchina. Un database con un .bak da SQL Server 2005 di ~ 250 MB viene ripristinato senza problemi. Dopo il riavvio della macchina, il processo "SQL Server NT - 64 bit" utilizza CPU allo 0%.
Dopo un paio di minuti o ore e alcune semplici query (nessun aggiornamento / inserimento!) Dall'utilizzo della CPU SSMS di "SQL Server NT - 64 Bit" salta all'improvviso a ~ 15% e rimane lì, anche quando è inattivo. Da quel momento in poi le query che di solito impiegano meno di un secondo impiegano improvvisamente 2 minuti. Durante una query effettiva, l'utilizzo della CPU NON aumenta. Il server diventa praticamente inutilizzabile in questo stato.
Solo la connessione di SQL Server Profiler richiede quindi> 30 sec. Accanto alle mie query vedo solo pochissime query da SQLServerCEIP / SQLTELEMETRY, ~ 3 al minuto.
Il riavvio di SQL Server non lo risolve. L'utilizzo della CPU torna al 15% circa. Anche dopo ore SQL Server non viene ripristinato. Solo il riavvio dell'intera macchina risolve il problema.
Poiché si tratta di un'installazione "out of the box", esiste solo un piccolo database, praticamente nessuna query, solo io come utente e probabilmente nessun blocco, i numerosi articoli su problemi di prestazioni regolari di SQL Server parlano di molte cose che don non si applica davvero qui. Sembra che SQL Server voglia concentrarsi esclusivamente su alcune attività interne.
Questa è una macchina virtuale con 2 GB di RAM e doppio Xeon a 2 GHz. Ho anche VS2016 ed è davvero veloce. Nessun antivirus, nemmeno Windows Defender. Già in ritardo qui. Proverò lo sp_whoisactive domani. Mi chiedo davvero CHE COSA stia facendo SQL-Server ... Sulla macchina precedente con 1 GB lo stesso DB funzionava con SQLServer2005 per 10 anni senza problemi ...
Non sono un esperto di SQL-Profiler. Dove dovrei iniziare a cercare?
auto_update_statistics_async
era attivata.