CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL...
-
Upload
nguyennguyet -
Category
Documents
-
view
437 -
download
16
Transcript of CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL...
![Page 1: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/1.jpg)
CONFIGURE SCCM / SQL FOR OPTIMAL PERFORMANCE
Benjamin Reynoldsblogs.technet.microsoft.com/benjamin/Microsoft
Steve Thompsonwww.stevethompsonmvp.wordpress.comSenior ConsultantSoftchoice
![Page 2: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/2.jpg)
@Steve_TSQL
SQL / EMS MVP
Many moons
Blues & BBQ
?
SQL, SSRS, SCCM
15 years
Sunriver & Indian
Steve ThompsonBenjamin Reynolds
![Page 3: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/3.jpg)
AGENDA Configure Windows Server
Best practices
Configure SQL Server Best practices
Optimization and Tuning techniques Syscommittab Backup for performance
![Page 4: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/4.jpg)
CONFIGURE WINDOWS SERVER
![Page 5: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/5.jpg)
CONFIGURE WINDOWS SERVERKey Topics Provision Server Recommended Platform Memory CPU Disk Best Practices
![Page 6: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/6.jpg)
Use Windows Server 2016 Memory CPU Disk
64KB NTFS format IOPS Drive layout
Considerations for Azure VMs See HA session
Best Practices – capacity planninghttps://docs.microsoft.com/en-us/sccm/core/plan-design/configs/recommended-hardware
WINDOWS SERVER - PROVISION SERVER
![Page 7: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/7.jpg)
CONFIGURE SQL SERVER
![Page 8: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/8.jpg)
CONFIGURE SQL SERVER Installation location Disk Layout Memory CPU Databases
SCCM TempDB SUSDB
DB Sizing, Autogrowth & VLF’s Patching – SP & CU updates
Cautionary notes… Best Practices / Lessons from the field!
![Page 9: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/9.jpg)
SQL INSTALLATION LOCATION Collocate with SCCM?
When possible, install SQL Server on same server as SCCM
Remote install of SQL Server Exceptions: HA scenarios
Install location Never C:
Disk Layout Plan to separate Data from Logs, TempDB on dedicated drive
![Page 10: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/10.jpg)
DISK LAYOUT Plan to separate Data from Logs, Place TempDB on dedicated drive
Include TempDB data and logs on same drive – SSD if possible
Logical Drive Minimum Size(GB)
Purpose
C: 100 OS + *Page file
E: 100 Applications + Database
F: 50 Log Files
G: 500 SCCM Content OS images, app packages, etc.
*P: 50 Page File
*T: 50 Temp DB
*U: 50 Backups
If SQL co‐located with SCCM sample drive layout:
![Page 11: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/11.jpg)
DISK LAYOUT - WHAT MSIT DOES
![Page 12: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/12.jpg)
SQL MEMORY CONFIGURATIONSQL Server loves memory. Maybe too much.Always, always set a minimum and maximum memoryRecommended Settings:
Minimum SQL memory = 8GB Maximum SQL memory
SCCM and SQL on same server: example 96GB total – 16GB = 80 GB for SQL SQL on Remote server: memory setting should be about 80% of server memory
Always calculate memory to whole GB Example: 8GB * 1024 = 8192MB
![Page 13: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/13.jpg)
SQL MEMORY CONFIGURATION Default (Screen shot) & modified
Remember - Monitor memory usage and adjust as needed. Page file usage = BAD
![Page 14: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/14.jpg)
CPUMAXDOP - MAX Degree Of Parallelism (MAXDOP)
By default, MAXDOP is set to 0. This means that all available processors are available to be deployed to process statements. That is good, right? Not necessarily. It depends.
To suppress parallel plan generation, set max degree of parallelism to 1 Large sites may benefit Very large site: SCCM Admin feedback: “With a CAS, MAXDOP with a higher value makes
collection queries faster, lower setting makes inbox processing faster, not a lot of room for compromise. We use 2.”
Advice: Experiment and monitor
![Page 15: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/15.jpg)
DATABASES Estimate size(s)
SCCM SUSDB TempDBUse SCCM DB Sizing estimator!
Multiple data files may be appropriate Can migrate using Filegroups Be cautious in a multi-site hierarchy!
Single LOG file Autogrowth = BAD
![Page 16: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/16.jpg)
TEMPDB
TempDB data files should be equally sized Total TempDB should approximate 25-30% of the SCCM total size. Place TempDB on a dedicated drive, with log file Create 4 (or more) equally sized data files. This helps you avoid the
GAM/SGAM/PFS page contention issues described in Microsoft KB 2154845. Turn off auto-growth Create no more than 8 data files
![Page 17: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/17.jpg)
DB FILE AUTOGROWTH
AUTOGROWTH IS TYPICALLY BAD Autogrowth recommendations:
Use proper sizing estimates for sufficient free space
Monitor DB free space
SET Autogrowth to either 512 or 1024MB
NEVER, EVER USE % GROWTH!
Incorrect settings can cause VLFs
![Page 18: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/18.jpg)
VLF – VIRTUAL LOG FILES Can have a negative effect on database performance Too many VLFs will slow down the startup, shutdown and read/write
performance of any database. VLFs are created when a transaction log file is allowed to auto-grow. Size transaction log file appropriately! Depending on size of database/transaction log file, less than several hundred Correct a high VLF count by:
SINGLE USER MODEDBCC SHRINKFILEMODIFY FILE
![Page 19: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/19.jpg)
VLF – VIRTUAL LOG FILES MS IT – recent foray into VLFs
![Page 20: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/20.jpg)
SERVICE ACCOUNTS & INSTANT INITIALIZATION Service Account versus System Account Ensure the service account is added to “Perform volume maintenance tasks” Ensure the service account is added to “Lock Pages in Memory”
DO WE WANT TO KEEP THIS AND TALK ABOUT THIS AT ALL?
![Page 21: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/21.jpg)
PATCHINGPatching – SP & CU updates Apply services packs and Cumulative updates on a regular basis Contain bug fixes, security vulnerabilities and performance fixesCautionary notes… SQL Server 2016 and SSMS have shared components Best practice, do not install SSMS on server, install on a separate workstation
![Page 22: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/22.jpg)
SQL Server review demo
![Page 23: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/23.jpg)
OPTIMIZATION AND TUNING
![Page 24: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/24.jpg)
OPTIMIZATION AND TUNING Indexes and Statistics – oh my! Ola Hallengren solution
How to properly implement
Proper SQL Agent task settings Considerations
MS IT – lessons from the field
![Page 25: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/25.jpg)
INDEX & STATISTICS MAINTENANCE What is an index?
A “small pointer table” to help speed up data lookups Scans vs Seeks
Why maintain indexes? They get fragmented and need to be “defragged” A highly fragmented index will impact performance
Overall data processing on the site Replication processing Querying/Reporting
What is a statistic? Information about the distribution of values in a table or index Used by the optimizer to determine an execution plan
Why maintain statistics? It impacts performance!
![Page 26: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/26.jpg)
INDEX & STATISTICS MAINTENANCE ConfigMgr “Rebuild Indexes” Maintenance Task
Reorganize indexes with 10%-30% fragmentation Rebuild indexes when fragmentation is greater than 30% Enterprise Edition of SQL Server allows for an online rebuild operation Disabled by default! There is no “Statistics Maintenance Task”!
Custom Index & Statistics Maintenance Define different fragmentation levels, time limits, or schedules Define separate statistic update schedules
DO IT! Index & Statistics maintenance is absolutely necessary! Indexes weekly; Statistics daily
![Page 27: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/27.jpg)
INDEX & STATISTICS MAINTENANCE Reorganize vs Rebuild Using Ola Hallengren’s index maintenance solution
Download & Install IndexOptimize.sql, CommandExecute.sql, and CommandLog.sql (from https://ola.hallengren.com/downloads.html)
Create a SQL Agent Job (or jobs) which executes IndexOptimize and set a schedule
Recommendations? Log to a table and review to determine if changes are necessary!
![Page 28: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/28.jpg)
WHAT WE DO Index weekly Statistics daily Log to the table! Skip “DrsConflictInfo”, “HinvChangeLog”, and “CI_CurrentComplianceStatusDetails What’s next…
![Page 29: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/29.jpg)
INDEX INVESTIGATIONS
![Page 30: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/30.jpg)
Implement Tuning Solution
![Page 31: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/31.jpg)
BACKUP
![Page 32: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/32.jpg)
BACKUP – SCCM AND SQL Maintenance Plans Custom Plans Considerations Performance
![Page 33: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/33.jpg)
SCCM BACKUPS Saves a copy of the mdf and ldf files
No compression
Saves configuration information Information to pre-populate recovery values
Only backs up the CM database
![Page 34: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/34.jpg)
CUSTOM BACKUP PLANS SQL backups supported by SCCM Smaller backup sizes possible – compression! Greater control over the backups taken/created All databases backed up Does not backup configuration information
During recovery those values must be typed in – server/sitecode/etc
Backup additional items Backup the Cd.latest folder after each build
https://stevethompsonmvp.wordpress.com/2017/01/17/sccm-file-backup-considerations/
![Page 35: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/35.jpg)
CONSIDERATIONS/PERFORMANCE Striping SQL backups Number of backups to keep Max Transfer Size LOG BACKUPS! (for Availability Groups) Backup ALL databases! Test backups often! (You don’t have a backup until you’ve restored it!) Backup cd.latest!
![Page 36: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/36.jpg)
WHAT WE DO AT MSITCM DB striped backup – 16 filesNightly Full backupsLog backups every 2 hours (if in FULL recovery mode)Keep the last 2 Full backups (and any log backups after)Max Transfer Size of 262144 for SAN connected drives (and Azure)Separate DPM jobs for offsite and longer term storageRestore CAS backup daily!
![Page 37: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/37.jpg)
![Page 38: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/38.jpg)
Backup Demo
![Page 39: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/39.jpg)
SYSCOMMITTAB
![Page 40: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/40.jpg)
SYSCOMMITTAB Internal tables used with Change Tracking
“Sys.change_tracking_[ID]”
Sys.syscommittab Requires a DAC connection to view
DMV = Sys.dm_tran_commit_table
Records the changes to these tables DRS picks up the changes for replication
Old records cleaned up by a ‘ghost cleanup process’ The “magical tipping point”
![Page 41: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/41.jpg)
SYSCOMMITTAB Make sure you don’t have a huge “backlog” of records on the CT tables! SQL 2014+ stored procedure: sp_flush_commit_table_on_demand ConfigMgr added two stored procedures for taking care of “syscommittab”
spDiagChangeTracking – used to check or cleanup (@CleanupChangeTracking variable)
spCleanupChangeTracking – does not require DAC but SQL 2014+
Custom solution Used as the core of the CM sprocs
Issues creating an Agent job due to DAC requirements
Write the info to a table!
![Page 42: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/42.jpg)
THE “DBA” SOLUTION
![Page 43: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/43.jpg)
THE “DBA” SOLUTION A separate database named “DBA” Logging and statistics gathering Custom objects (stored procedures, functions, views, etc) stored here Iterations in source control
![Page 44: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/44.jpg)
A look at the DBA Solution
![Page 45: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/45.jpg)
REFERENCESOla and SCCMhttps://stevethompsonmvp.wordpress.com/2016/11/29/optimizing-sccm-databases-revisited/
Properly install and configure SQL for SCCMhttps://stevethompsonmvp.wordpress.com/2016/07/25/installing-and-configuring-sql-server-for-configuration-manager/
VLFshttps://stevethompsonmvp.wordpress.com/2013/05/14/virtual-log-files-and-impact-on-configmgr-performance/
![Page 46: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/46.jpg)
![Page 47: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/47.jpg)
![Page 48: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/48.jpg)
SECTION HEADERThis is the next section
![Page 49: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/49.jpg)
TITLE Line1
Bullet Level 1 Bullet Level 2
Bullet Level 3
![Page 50: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/50.jpg)
TITLECode
![Page 51: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/51.jpg)
Text Only with Border Level 1
Level 2 Level 3
![Page 52: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/52.jpg)
Text Only (Red) Level 1
Level 2 Level 3
![Page 53: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/53.jpg)
TITLE Text 1
Level 1 Level 2
Level 3
Text 2 Level 1
Level 2 Level 3
![Page 54: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/54.jpg)
Section 1 Text
Level 1 Level 2
Level 3
Section 2 Text
Level 1 Level 2
Level 3
TITLE
![Page 55: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/55.jpg)
Demo Title
![Page 56: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/56.jpg)
![Page 57: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/57.jpg)
![Page 58: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/58.jpg)
![Page 59: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/59.jpg)
![Page 60: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/60.jpg)
![Page 61: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/61.jpg)
![Page 62: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/62.jpg)
![Page 63: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/63.jpg)
![Page 64: CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCEschd.ws/hosted_files/mms2017/4e/MMS2017 SCCM SQL Optimal... · CONFIGURE SCCM/ SQL FOR OPTIMAL PERFORMANCE Benjamin Reynolds blogs.technet.microsoft.com](https://reader036.fdocuments.net/reader036/viewer/2022082202/5a9ebc027f8b9a0d158bc592/html5/thumbnails/64.jpg)