Author: volt
-

Recover a database with a DAMAGED and/or LOST log file
A corrupted or missing transaction log file is one of the most stressful situations a DBA can face. The first instinct is to restore from the last full backup — but depending on the circumstances, SQL Server offers faster recovery paths that minimize both downtime and data loss. This article walks through the two main…
-

Monitoring Wait Events of a single Session or Query in SQL Server
When troubleshooting a slow query or a specific application session, the instance-level wait statistics in sys.dm_os_wait_stats are too coarse: they aggregate wait events from all processes since the last restart. Resetting the view with DBCC SQLPERF is also problematic on busy instances where hundreds of other sessions generate noise. SQL Server 2008’s Extended Events framework…
-

How to script logins with the original password HASH and original SID
When migrating SQL Server instances, one of the most error-prone steps is transferring SQL logins to the destination. Simply scripting a login with CREATE LOGIN … WITH PASSWORD won’t preserve the original password hash or the original SID — and mismatched SIDs between instance logins and database users will break application connectivity even if the…
-

How to improve mysql performance using CACHING
Before diving into a deep performance investigation — wait stats, execution plans, I/O benchmarks — it’s worth checking whether a simple configuration oversight is behind the problem. One of the most common and highest-impact quick wins in MySQL is query cache sizing. A cache that’s disabled, too small, or incorrectly sized can account for a…
-

Massive SQL Server Database Moving Using Detach – Attach: The Complete Procedure
Moving SQL Server databases to a new volume — whether to rebalance I/O across storage, migrate to faster disks, or reclaim space — requires a methodical approach to avoid downtime surprises. The detach/attach method is the fastest option when you can afford a brief offline window: no backup involved, no network transfer overhead. This metascript…
-

Anayze SQL default trace to investigate instance events
SQL Server runs a lightweight background trace called the default trace that records a wide range of server-level events: database auto-growth events, object creation and deletion, login failures, server configuration changes, and more. It’s often the first place to look when investigating an incident that didn’t make it into the error log. This article shows…
-

Queries to see rapidly what your MySql is doing NOW
When troubleshooting a slow or unresponsive MySQL instance, the first step is always the same: find out what is happening right now. These quick diagnostic queries use MySQL’s built-in SHOW STATUS and SHOW PROCESSLIST commands to surface the most useful information in seconds — no external tools required. 1. Active Processes and Running Queries SHOW…
-

SQL Jobs Monitoring: check last run datetime and duration
SQL Server Agent jobs are the backbone of automated database maintenance: backups, index rebuilds, integrity checks, ETL pipelines. Knowing at a glance when each job last ran and how long it took is essential for fast daily monitoring, especially when managing multiple instances. This query reads directly from the Agent system tables in msdb and…
-

How to make your databases smaller and faster: find unused indexes
Indexes are one of the most powerful performance tools in SQL Server — and one of the most overlooked sources of overhead. Every index you create must be maintained on every INSERT, UPDATE, and DELETE operation. Unused indexes cost you disk space, backup time, memory, and write performance, without providing any read benefit. Finding and…
-

Analyze SQL Server database historical growth: MONTLY size changes
When the daily backup history is too granular for a high-level capacity planning overview, a monthly view gives a cleaner picture of long-term growth trends. This query aggregates backup data from msdb..backupset by month, taking the peak size reached in each month to calculate the net monthly change. This complements the daily report: use the…