The database was live, traffic was rising fast, and the schema had to change. A new column was the only way forward.
Adding a new column sounds simple. In practice, it can be the step that breaks production if done without care. Every system has constraints: locking behavior, deployment windows, replication lag, backup size, and schema migration tooling. Understanding how to add a column without downtime is the difference between a smooth release and a rolled-back disaster.
First, know your database engine’s capabilities. PostgreSQL can add certain types of columns instantly, but adding columns with default values may cause a full table rewrite. MySQL can be more restrictive depending on the storage engine. Cloud-managed databases often add hidden latency or enforce stricter limits.