Welcome to Section 7. This section is where you start thinking like a production DBA.
In the real world, most outages are not caused by “one bad query.” They are caused by
unstable configuration, undocumented changes, poor defaults left untouched for years,
or well-meaning “tuning” that was never validated.
Your goal as a DBA is not to make the server “fast today.” Your goal is to make the server
predictable, supportable, and safe—so performance stays consistent and incidents are easier to diagnose.
Lesson description: You will learn the DBA configuration mindset used in production:
baseline-first, change control, one change at a time, evidence-based validation, and disciplined documentation.
You will build a repeatable workflow to capture a configuration snapshot (before/after),
define what a “safe baseline” means, and create rollback-friendly change notes.
New DBAs often think configuration is a set of “best practice numbers” you copy from the internet.
That approach causes outages.
Production DBAs use a different mindset:
Rule of thumb: If you cannot explain why a setting should change and how you will validate it,
you are not ready to change it.
Stable defaults mean your instance has a known, consistent configuration baseline that avoids common outages.
You are not constantly experimenting. You are operating a stable system.
Controlled changes mean:
DBA truth: “Best practices” without validation become “best guesses.”
Some settings have high blast radius. You do not change them casually:
In this section you will learn how to set these correctly. In this lesson, you learn how to manage changes safely.
Create a consistent place to save “before/after” configuration snapshots. In your lab, use:
C:\DBA\
Baselines\
InstanceConfig\
Logs\
Changes\
Notes\
Naming standard (simple and professional):
baseline_instance_config_before_YYYYMMDD_HHMM.txtbaseline_instance_config_after_YYYYMMDD_HHMM.txtchange_note_YYYYMMDD_HHMM.txtRun these scripts to capture a baseline. These are safe read-only queries.
In production, DBAs run baseline capture before changing anything.
SELECT
GETDATE() AS captured_at,
@@SERVERNAME AS server_name,
SERVERPROPERTY('MachineName') AS machine_name,
SERVERPROPERTY('InstanceName') AS instance_name,
SERVERPROPERTY('Edition') AS edition,
SERVERPROPERTY('ProductVersion') AS product_version,
SERVERPROPERTY('ProductLevel') AS product_level;
This shows configured value and value-in-use, which matters when a restart is required.
SELECT
name,
description,
value AS configured_value,
value_in_use,
minimum,
maximum,
is_dynamic,
is_advanced
FROM sys.configurations
ORDER BY name;
SELECT
name,
state_desc,
recovery_model_desc,
compatibility_level,
is_auto_close_on,
is_auto_shrink_on,
is_read_committed_snapshot_on,
is_parameterization_forced
FROM sys.databases
ORDER BY name;
What you are looking for (for later lessons):
AUTO_CLOSE and AUTO_SHRINK being ON are usually red flags in real environments.
SELECT
DB_NAME(mf.database_id) AS database_name,
mf.type_desc,
mf.name AS logical_file_name,
mf.size * 8 / 1024 AS size_mb,
mf.growth,
mf.is_percent_growth,
mf.physical_name
FROM sys.master_files AS mf
ORDER BY database_name, mf.type_desc, mf.file_id;
In production, a change note is not optional. It is what protects you, the business, and the system.
Use this template in a text file:
CHANGE NOTE (DBA) Date/Time: Environment: (Dev/Test/Stage/Prod) Server/Instance: Requested by: Approved by: Objective (what problem are we solving?): Risk (what could break?): Rollback plan (how do we undo it quickly?): Before evidence captured (file names): After evidence captured (file names): Change steps executed (exact commands/settings): Validation performed (what proved success?): Notes (anything unusual observed):
This habit is what separates a “button-clicker” from a job-ready DBA.
Validation means you compare before/after evidence. Common DBA validation items include:
In later lessons you will validate specific settings (MAXDOP, memory, tempdb, growth strategy).
For now, you must learn the process and discipline.
If you change MAXDOP, memory, tempdb files, and autogrowth settings in one day,
and performance changes, you will not know why.
Job-ready DBAs avoid this by:
C:\DBA\Baselines\InstanceConfig\ and C:\DBA\Logs\Changes\C:\DBA\Baselines\InstanceConfig\baseline_instance_config_before_YYYYMMDD_HHMM.txtC:\DBA\Baselines\InstanceConfig\baseline_db_options_before_YYYYMMDD_HHMM.txtC:\DBA\Baselines\InstanceConfig\baseline_file_growth_before_YYYYMMDD_HHMM.txtC:\DBA\Logs\Changes\change_note_YYYYMMDD_HHMM.txtNext, you will learn one of the most impactful SQL Server configuration areas:
parallelism. You will understand what MAXDOP controls, how Cost Threshold works,
why bad settings cause CPU storms or slow queries, and how DBAs set these safely with validation.
Not a member yet? Register now
Are you a member? Login now