Adding a new column sounds simple. In practice, it can mean downtime, locks, and slowed queries if done wrong. Schema changes are one of the most common risks in data-heavy systems. Whether you work with PostgreSQL, MySQL, or a cloud database service, the process must be planned for zero disruption.
A new column changes the table structure. The database must update internal metadata. If you set a default value or require a constraint, the engine may rewrite the table on disk. On large datasets, that can block reads and writes until the operation finishes. The right approach depends on engine capabilities, schema migration tools, and the application’s tolerance for temporary degradation.
For PostgreSQL, adding a nullable column without a default is instant. Adding a column with a non-null default before version 11 rewrites the table. In newer versions, that rewrite is avoided, but constraints and indexes still have costs. For MySQL with InnoDB, online DDL can add certain types of columns without full table lock, but some changes still require a table copy.