Do these 3 things before closing this tab:
1Fix the driver behind crashes, sound loss and screen glitches2Repair Windows errors before they cause bigger problems3Scan for outdated or missing drivers - takes under a minuteiTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more
The best SQL optimization tool is usually the one built into your database. Start with historical or aggregate workload evidence—SQL Server Query Store, PostgreSQL pg_stat_statements, or MySQL Performance Schema—then inspect the specific statement with that engine’s EXPLAIN tooling. Choose a broader product such as SolarWinds Database Performance Analyzer when you need centralized, cross-engine history, wait analysis, alerting, and advisor views.
These seven options are not interchangeable. Some are database capabilities, one is a free PostgreSQL desktop application, and one is a commercial multi-engine monitoring platform.
How to choose among the seven tools
Use workload evidence to decide what deserves attention. A complicated-looking SQL statement may be harmless, while a short statement executed millions of times may dominate resource use. Compare results on a representative workload and verify that every rewrite preserves result semantics.
| Tool | Database coverage | Best evidence | Operational model |
|---|---|---|---|
| SQL Server Management Studio Query Store | SQL Server, Azure SQL Database, Fabric SQL database, Azure SQL Managed Instance, Azure Synapse Analytics | Historical queries, plans, runtime statistics, regressions, optional waits | Built into Microsoft platforms; configuration is version/service dependent |
PostgreSQL pg_stat_statements |
PostgreSQL | Aggregated planning and execution statistics by statement | Server module; requires preload configuration and restart |
PostgreSQL EXPLAIN |
PostgreSQL | Plan for an individual query | Native statement inspection |
| Redgate pgNow | PostgreSQL, including Amazon RDS, Aurora PostgreSQL, and Azure Flexible Server | Focused desktop monitoring and diagnostics | Free desktop application for Windows, macOS, and Linux |
| SolarWinds Database Performance Analyzer | SQL Server, Oracle, IBM Db2, SAP ASE, SAP HANA, PostgreSQL, MySQL, MariaDB and other documented engines | Historical waits, anomalies, query and plan analysis, advisors | Commercial, agentless, centralized monitoring |
| MySQL Performance Schema | MySQL 8.4 documentation scope | Native performance monitoring data | Database instrumentation |
MySQL EXPLAIN |
MySQL 8.4 documentation scope | Execution-plan information for a statement | Native statement inspection |
For a practical workflow, collect history first, inspect a plan second, change one thing, and measure again. A plan is per-query evidence; monitoring adds time, waits, blocking, and instance-wide context.
Popular on Amazon
1. SQL Server Management Studio Query Store
Microsoft describes Query Store as providing insight into query plan choice and performance. It records query text, plans, and runtime statistics over time, making it useful when a plan changes and performance regresses. It can retain multiple plans and supports plan forcing; wait tracking is available when configured.
When it fits
- Investigating a regression that began after a deployment, statistics update, or engine change.
- Finding high-duration, high-CPU, or frequently executed statements from historical data.
- Comparing plans rather than relying on a single live execution.
Important setup qualification
Query Store is enabled by default for new databases in SQL Server 2022. Defaults differ on earlier SQL Server versions and on Azure services, so confirm the setting for the exact edition and service. See Microsoft’s performance tools overview and the Query Store documentation.
2. PostgreSQL pg_stat_statements
pg_stat_statements aggregates planning and execution statistics for SQL statements. It is an excellent first filter: rank statements by total time, mean time, calls, or I/O-related measures available in your PostgreSQL version, then inspect the most consequential statements individually.
Prerequisites and restart
The module must be added to shared_preload_libraries. PostgreSQL documentation states that adding or removing it requires a server restart, and query-identifier calculation must be enabled. Plan this change with your availability procedures rather than treating it as a session-only setting. Read the PostgreSQL documentation for version-specific columns and configuration.
3. PostgreSQL EXPLAIN
PostgreSQL’s native EXPLAIN output shows how the optimizer expects to execute one statement. Use it after workload statistics identify a target. Compare estimated operations with observed behavior, then test a proposed index, predicate rewrite, join change, or data-model adjustment on representative data.
Also popular on Amazon
EXPLAIN does not replace workload history: a plan for one execution cannot tell you how often the statement runs or how much time it consumes across the system. Pair it with pg_stat_statements and consult the official PostgreSQL statistics documentation for the workload context.
4. Redgate pgNow
Redgate presents pgNow as a free desktop PostgreSQL monitoring and diagnostics tool for DBAs and developers. It supports Windows, macOS, and Linux, and can connect to standard PostgreSQL installations plus Amazon RDS for PostgreSQL, Aurora PostgreSQL, and Azure Flexible Server.
Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Clear out junk files and repair common Windows errorsFree Scan →Scan for outdated or missing drivers - takes under a minuteDriver Scan →Why choose a focused desktop tool
pgNow is suited to an engineer who needs a focused diagnostic view without deploying a full monitoring platform. It is PostgreSQL-specific, so teams operating several database engines will need separate tools or a centralized product. Details are on the Redgate pgNow page.
5. SolarWinds Database Performance Analyzer
Database Performance Analyzer (DPA) is the enterprise, cross-engine option in this list. SolarWinds documents agentless monitoring for SQL Server, Oracle, IBM Db2, SAP ASE, SAP HANA, PostgreSQL, MySQL, MariaDB, and other supported engines.
What it adds beyond a plan window
- Historical wait-time analysis across instances.
- Anomaly detection and query analysis.
- Advisor views for waits, blocking, expensive plan steps such as full scans, and plan changes.
- Table and index tuning opportunities on supported database types.
These are documented product capabilities, not guarantees of a particular speed improvement. Review the SQL Query Analyzer page and advisor documentation. DPA is the stronger fit when one operations team needs history and context across heterogeneous production estates; its deployment and licensing overhead are greater than native features.
Also popular on Amazon
6. MySQL Performance Schema
Performance Schema is MySQL’s native source of performance-monitoring data. It instruments server activity that you can query through Performance Schema tables and related views. Use it to identify workload patterns before drilling into an individual statement.
The Tool Desk
Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →The cited reference is specifically for MySQL 8.4. Configuration, instruments, consumers, and output should not be assumed identical on older releases. Use the MySQL 8.4 Performance Schema manual for the server version you operate.
7. MySQL EXPLAIN
MySQL’s EXPLAIN statement returns execution-plan information for a query. It helps you inspect access paths, joins, and other optimizer decisions after Performance Schema or application telemetry identifies a costly statement.
Treat the output as inspection evidence, not an automatic optimizer or a promise that the plan will perform well for every real workload. Validate changes with production-like data and concurrency. The reviewed reference is the MySQL 8.4 EXPLAIN manual.
A repeatable optimization workflow
- Identify the engine and version. Features, defaults, and columns vary between SQL Server services, PostgreSQL releases, and MySQL versions.
- Collect workload evidence. Use Query Store,
pg_stat_statements, Performance Schema, or DPA to rank statements by the metric that matters: total time, latency, CPU, reads, waits, or frequency. - Inspect the plan. Use PostgreSQL or MySQL
EXPLAIN, or Query Store’s retained plans, to locate scans, joins, cardinality mismatches, spills, blocking, or plan changes. - Form one hypothesis. Examples include a missing or inappropriate index, stale statistics, parameter-sensitive behavior, avoidable row expansion, or an inefficient application access pattern.
- Change and verify. Test the rewrite or index with representative data and concurrency. Confirm result-set equivalence, duration, resource use, and impact on other queries.
- Keep or revert deliberately. Record the baseline, change, plan, and measured outcome. A vendor advisor’s suggestion remains a hypothesis until validated.
Common failure modes and fixes
No historical data appears
Check that the feature is enabled, collecting the required consumers, and retaining data for the period you are querying. Query Store defaults are version/service dependent; pg_stat_statements requires preload configuration and a restart; Performance Schema collection depends on enabled instruments and consumers.
Also popular on Amazon
The plan looks efficient but production is slow
Check execution frequency, parameter or data-distribution differences, waits, blocking, I/O capacity, and concurrency. A single estimated plan cannot explain system-wide contention.
Enabling PostgreSQL statistics did not work
Confirm the module is in shared_preload_libraries, query identifiers are enabled, and the server was restarted after configuration. Then verify that the extension is created in the database where you query it.
An advisor recommends a risky index or rewrite
Review write overhead, storage, locking, plan stability, and affected queries. Test on a staging copy or controlled production window, and retain a rollback path.
Cloud connectivity fails
For hosted PostgreSQL or centralized monitoring, verify network routes, TLS requirements, firewall rules, least-privilege credentials, and whether the service exposes the required statistics views. pgNow specifically lists Amazon RDS for PostgreSQL, Aurora PostgreSQL, and Azure Flexible Server support; confirm current provider settings before deployment.
Free tools Windows power users keep installed
One-click scans. No signup required.
Documenting plans and results
When you need shareable images of query plans, dashboards, or runbooks, ScreenshotNeo is the alternative to try first: it removes consent banners, popups, and chat widgets before capture, and bills only clean shots.
Or skip the browser setup
One GET request captures a URL as PNG, JPEG, WebP, or PDF. See the ScreenshotNeo documentation.
Also popular on Amazon
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
import requests
r = requests.get("https://api.screenshotneo.com/v1/shot", params={"access_key": "YOUR_API_KEY", "url": "https://stripe.com"}, timeout=90)
open("shot.webp", "wb").write(r.content)
const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://stripe.com' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);
Bot checks, blank pages, timeouts, failed loads, and cache hits are not billed, and response headers report the page verdict and billing result. Its MCP server provides take_screenshot, get_page_info, and capture_pdf for Claude, Cursor, and other MCP clients. The Free plan includes 1,000 screenshots per month without a card; paid plans start at $5 for 3,000. Sign up free for ScreenshotNeo.
Which tool should you start with?
- SQL Server: start with Query Store, then inspect retained plans and waits.
- PostgreSQL: combine
pg_stat_statementswithEXPLAIN; choose pgNow for a focused desktop diagnostic workflow. - MySQL: use Performance Schema to find workload hotspots, then inspect targets with
EXPLAIN. - Multiple engines or centralized operations: evaluate DPA for cross-instance history, waits, anomaly views, and documented advisors.
Frequently Asked Questions
Are these tools automatic SQL optimizers?
No. They provide workload measurements, plans, diagnostics, or recommendations. You must validate any rewrite, index, or plan action for correctness and representative performance.
Recommended Free Tools
Should I inspect a plan before finding the busiest query?
Usually no. Start with historical or aggregate workload evidence so plan analysis is focused on statements with meaningful system impact.
Can one tool cover SQL Server, PostgreSQL, and MySQL equally?
Native tools are engine-specific. DPA is the cross-engine option listed here; its documented support and advisor coverage still vary by database type.

