Boring is stable, stable is good - best practices in practice Alexander Arvidsson (@arcticdba) Boring is stable, stable is good - best practices in practice
Image copyright: https://www.autoevolution.com @arcticdba
Principal Solutions Architect at Atea Presenter / blogger / podcaster Star Wars fan @arcticdba
Consider using the unattended file Patching goes without saying
Antivirus Hyper-threading Memory Instances Power gMSA @arcticdba Never use Antivirus @arcticdba
Antivirus Hyper-threading Memory Instances Power gMSA SE can use 16 *cores* - difference between vm and bare metal http://sqlblog.com/blogs/joe_chang/archive/2013/04/08/hyper-threading-performance.aspx http://www.dbdelta.com/sql-server-and-hyper-threading/
Antivirus Hyper-threading Memory Instances Power gMSA
Standard Edition max RAM: 64GB Server RAM: 96GB Procedure Cache Connection context Buffer Cache System-level data structures Log caches max server memory https://blogs.msdn.microsoft.com/sql_server_team/sql-server-2016-sp1-know-your-limits/ @arcticdba
Antivirus Hyper-threading Memory Instances Power gMSA @arcticdba Power settings @arcticdba
Antivirus Hyper-threading Memory Instances Power gMSA @arcticdba One or several instances, think about networking @arcticdba
Antivirus Hyper-threading Memory Instances Power gMSA @arcticdba https://www.sqlshack.com/using-group-managed-service-accounts-with-sql-server/ @arcticdba
Alignment is most often no longer an issue
Stripe size Disk layout IFI @arcticdba
SQL Server will use anything between 512bytes up to 8M (columnstore) SQL Server will use anything between 512bytes up to 8M (columnstore). Also use /L for format or –UseLargeFRS paraeter for the Format-Volume powershell cmdlet (CheckDB failing error 665) NTFS large file record segments. @arcticdba
Bob Ward Summit 2014 @arcticdba
Stripe size Disk layout IFI @arcticdba
C:\ (OS) D:\ (SQL Server) E:\ (Data) F:\ (Log) S:\ (Backup) T:\ (TempDB) Perhaps slap E and F together? Sparse files för checkdb Max 500GB LUNs enligt IBM @arcticdba
Stripe size Disk layout IFI @arcticdba
Mention security aspect @arcticdba
Mention security aspect
Mention security aspect
SQL Again, patching is a no-brainer
Trace flags Lock pages in memory SQL Mail Max/minmemory DAC DBATools SQL Mail Max/minmemory DAC MAXDOP & cost threshold Optimize for ad-hoc Backup compression TempDB DB file settings Query Store Operators & alerts Agent config Maintenance (jobs) Trace Flags 1117, 1118, 2371 (stats), 2562 (checkdb), 2549(checkdb), 4199 (optimizer enhancements) LockPages Jonathan Kehayias has a great blog post with both sides of the argument and lots of interesting information: https://www.simple-talk.com/sql/database-administration/great-sql-server-debates-lock-pages-in-memory/ DBATools setup install-module dbatools https://dbatools.io/install/ SQL Mail Set it up Memory max/min, visa kalkylatorn Test-DbaMaxMemory DAC Maxdop/cost Start with 40-50, explain OLTP MAXDOP 2-4-6-8 https://support.microsoft.com/en-us/help/2806535/recommendations-and-guidelines-for-the-max-degree-of-parallelism-confi Adhoc Dynamics/AX - do not turn on Backup compression TempDB If not =>2016 set the files File growth in general VLOGs DB file settings Edit MODEL Growth never in percent Query store ON, open query store Operators & alerts Set them up AgentConfig Failsafe, mail profile, etc. Maintenance Ola All jobs have failure emails Create a DBA database Install-DbaMaintenanceSolution -SqlInstance RES14224 -Database DBA -BackupLocation “Z:\SQLBackup” -CleanupTime 72 @arcticdba
DOCUMENT (no, seriously, do it) @arcticdba
(you heard the man, do it) BASELINE (you heard the man, do it) @arcticdba
AUTOMATE (don’t do boring) @arcticdba
TRAIN (shit happens) @arcticdba
@arcticdba
http://www.arcticdba.se/?page_id=3488 Alexander Arvidsson alexander@arcticdba.se @arcticdba http://www.arcticdba.se/?page_id=3488 Image copyright: Autoglitz