Adding a new column should be simple. In practice, it can break production, stall queries, and lock tables at the worst moment. Schema changes are one of the most sensitive operations in any SQL database. They touch structure, data, and application logic at once.
A new column often means updating migrations, adjusting indexes, and checking defaults. Without care, it can trigger a full table rewrite. On large datasets, this turns a quick deploy into a multi-hour outage risk. The wrong approach can block reads and writes, pile up transactions, and slow replication.
To add a new column safely, start by knowing your database’s DDL behavior. In PostgreSQL, adding a column with no default is fast. Adding one with a non-null default rewrites the table. In MySQL, the impact depends on engine type and version. Modern versions can add columns online, but only under certain conditions.