When a database evolves, adding a new column is one of the most common schema changes. It sounds simple. It is not. The wrong approach can lock tables, stall writes, or break application queries under load. The right approach keeps production stable, migrations clean, and deployments fast.
A new column must have a clear name, a defined type, and the right default. Decide if it needs constraints or indexes before you apply it. Think about nullability. Adding a nullable column is cheap, since most databases only alter metadata. Adding a non-nullable column with a default value can force a table rewrite. In large datasets, that single choice can mean seconds or hours.
In PostgreSQL, ALTER TABLE ADD COLUMN works without a full table rewrite if you add it as nullable. You can backfill data in small batches, then set constraints after the table is ready. In MySQL, similar rules apply, but storage engines differ. Always check the impact with EXPLAIN or on a staging copy before moving to production.