The database groans when you add a new column at scale. One command can lock tables, stall transactions, and cause production pain. Yet schema changes are part of growth, and adding a new column is one of the most common operations in any evolving system.
A new column changes the shape of your data. Done right, it enables faster queries, cleaner logic, and new features. Done wrong, it triggers downtime, corrupted indexes, and wasted deployments. The path you choose depends on your database engine, your version, and your migration tooling.
In PostgreSQL, adding a nullable new column without a default is nearly instant. It only updates metadata in the system catalogs. But adding a column with a default value to a large table will rewrite the entire table, creating locks and delays. MySQL behaves differently—in some versions, even a simple new column can cause a full table copy. Evaluate your constraints, indexes, and query plans before making the change.