Download Diagnostic Tools

Collect SQL Server performance telemetry with our free, open-source tools. Choose between encrypted upload or manual JSON inspection.

v1.1.0 · Pure T-SQL + PowerShell · No agent required · SQL Server 2016-2025

Read-Only

No writes to your server

Encrypted

RSA-2048 + AES-256

Fully Inspectable

Read every query before running

Under 60 Seconds

Lightweight, fast collection

2016 - 2025

All editions supported

Two Scripts, One Workflow

AutoDBA_Collect.sql

T-SQL Diagnostic Script

Pure T-SQL script that reads from system DMVs and catalog views. Collects performance telemetry, wait stats, top queries, missing indexes, and more. Outputs JSON.

  • Runs in SSMS or sqlcmd
  • No PowerShell required
  • Fully inspectable before execution

Submit-AutoDBA.ps1

Recommended

PowerShell wrapper that runs the T-SQL script, compresses the output, and encrypts it using hybrid RSA+AES encryption. Only AutoDBA servers can decrypt the file.

  • End-to-end encryption (RSA-2048 + AES-256)
  • Gzip compression (~70-90% smaller)
  • Optional direct upload to AutoDBA
  • PowerShell 5.1+ and 7+ compatible

What Gets Collected

Collected (metadata only)

  • Server configuration (MAXDOP, memory, cost threshold)
  • Wait statistics breakdown
  • Top query text + execution stats (anonymizable)
  • Execution plan XML
  • Missing index recommendations
  • Index usage statistics
  • TempDB, memory, I/O metrics
  • SQL Agent job status
  • SQL Server 2025 features (optimized locking, IQP, etc.)

NEVER Collected

  • Table data or row contents
  • Column values or user data
  • Passwords or connection strings
  • Linked server credentials
  • Database Mail content
  • SQL Agent job step source code
  • Backup file paths or network shares
  • Any personally identifiable information

Quick Start

1

Set up a read-only login (optional but recommended)

Create a dedicated monitoring login with minimal permissions.

-- AutoDBA Read-Only Monitoring Login
-- Run this on your SQL Server instance

USE [master]
GO

CREATE LOGIN [AutoDBA_Monitor] WITH PASSWORD = N'YourSecurePassword';
GO

GRANT VIEW SERVER STATE TO [AutoDBA_Monitor];
GRANT VIEW ANY DEFINITION TO [AutoDBA_Monitor];
GO

-- For each database you want to monitor:
-- USE [YourDatabase]
-- CREATE USER [AutoDBA_Monitor] FOR LOGIN [AutoDBA_Monitor];
-- GRANT VIEW DATABASE STATE TO [AutoDBA_Monitor];
-- GO
2

Install the SqlServer PowerShell module

Required for Invoke-Sqlcmd. Skip if already installed.

Install-Module SqlServer -Scope CurrentUser
3

Run Submit-AutoDBA.ps1

Place both scripts in the same folder and run. The PowerShell script collects diagnostics, compresses, and encrypts the output automatically.

# Basic usage - saves encrypted .autodba file
.\Submit-AutoDBA.ps1 -ServerInstance "YourServer"

# With SQL authentication
.\Submit-AutoDBA.ps1 -ServerInstance "YourServer" -Credential (Get-Credential)

# Also save raw JSON for inspection
.\Submit-AutoDBA.ps1 -ServerInstance "YourServer" -RawOutput
4

Upload the .autodba file

Create a free account, Create a free account, add your SQL Server instance, and upload the .autodba file. Only our servers can decrypt it. Get your analysis in under 60 seconds.

How Encryption Works

The .autodba file format uses hybrid encryption:

  1. Your diagnostic JSON is gzip compressed (70-90% size reduction)
  2. A random AES-256 key encrypts the compressed data
  3. The AES key is encrypted with AutoDBA's RSA-2048 public key (OAEP-SHA256)
  4. Both are packaged into the .autodba binary format

The result: only AutoDBA servers hold the private key needed to decrypt. Your data is encrypted at rest and in transit.

Privacy Controls

The script includes built-in anonymization. Set @AnonymizeMode at the top of the script.

NONE

Full Query Text

Complete query text included for maximum analysis accuracy. Best results.

LITERALS

Anonymized Literals

String and numeric literals replaced with @p placeholders. No PII leakage possible.

FULL

Hashed Queries

Query text fully hashed. Only statistics and execution plans retained. Maximum privacy.

Version-Aware Collection

The script auto-detects your SQL Server version and collects version-specific features.

VersionAdditional Collection
SQL Server 2016Core DMVs, query stats, wait stats, indexes
SQL Server 2017+ Automatic tuning, stats histogram
SQL Server 2019+ Last actual plan, IQP features, memory grant feedback
SQL Server 2022+ Query Store hints, PSPO, ledger status
SQL Server 2025+ Optimized locking, OPPO, DOP/CE feedback, DiskANN indexes, logical index corruption detection, edition limits

Ready to optimize your SQL Server?

Download the scripts, run against your instance, upload the output. Get expert-level DBA recommendations in seconds.

Create Free Account