Adding a new column is one of the simplest schema changes, but it can destroy uptime if done wrong. In modern systems, every migration runs under load. Every change must be planned for production.
A new column changes the shape of your data model. It affects reads, writes, indexes, and caching. The wrong default value can bloat storage. A misplaced type can slow queries. Adding nullable columns can dodge rewrite costs, but you must handle null logic in the application. Adding non-null with a default often rewrites the entire table. On large datasets, that locks the table or eats I/O budgets.
In PostgreSQL, adding a nullable column is fast because it updates catalog metadata only. Adding a non-null with default rewrites unless you are on a version with optimized defaults. In MySQL, even a “fast” alter can trigger a table copy depending on engine and settings. With cloud databases, your provider may run background table rebuilds you cannot see until latency spikes.