Adding a new column is simple in syntax but heavy in consequence. Done right, it extends your data model without disruption. Done wrong, it locks tables, delays deploys, and freezes critical paths.
A new column changes schema shape. In relational databases, this means altering metadata, adjusting storage, and often rewriting rows. In PostgreSQL, adding a nullable column with a default can trigger a full rewrite. MySQL behaves differently; it may copy the table. Each engine has limits and trade-offs.
Plan before you run the migration. For large tables, add a column without a default, backfill in controlled batches, then apply constraints. This reduces locks and avoids downtime. Use ADD COLUMN in transactions only if your workload can handle the delay. Monitor replication lag if your cluster spans regions.