Adding a new column should be straightforward, but at scale, it can create downtime, lock queries, and break production if done wrong. Schema changes in live systems are dangerous when executed without planning. A single ALTER TABLE can ripple through deployments, migrations, and code paths.
A new column affects more than storage. It changes indexes, query plans, and replication behavior. The choice between nullable, default values, or computed fields impacts both performance and data integrity. Even the order of operations—whether you backfill pre-deployment or lazy-load post-deployment—matters for stability.
In PostgreSQL, adding a nullable column without a default is nearly instant. Adding one with a default rewrites the table and can block writes. MySQL behaves differently, and cloud providers add their own constraints. Understanding engine-specific behavior is the difference between safe migration and a 3 AM incident.