Adding a new column is one of the most common schema changes. It sounds simple. It can be dangerous. Even small alterations can lock rows, block queries, or bring down services if done wrong. In production, you need speed, safety, and zero downtime.
A new column changes storage layout. It can force a full table rewrite. On large datasets, that means heavy I/O, slow migrations, and risk of deadlocks. The right approach depends on the database engine. In PostgreSQL, adding a nullable column with no default is instant. Adding one with a non-null default triggers a rewrite. In MySQL, certain ALTER TABLE operations are online, but others are blocking.
Plan for the migration. Measure the size of the table. Use staging databases to estimate impact. For critical systems, use phased rollouts: