Adding a new column in a database sounds simple. It rarely is. Timing, locks, data integrity, and application compatibility can all turn a single ALTER TABLE into a production incident. Doing it right means understanding the exact behavior of your database engine, the storage format, and the workload it serves.
A new column without a default value will often write instantly to metadata, but the stakes change once you define a default or set NOT NULL. Databases like PostgreSQL rewrite the whole table when a default is present in older versions, while newer versions optimize this with metadata-only additions. MySQL, especially with InnoDB, can handle many new column operations online, but performance still depends on row format and column ordering.
Plan for queries and indexes before the schema change. If an application code path reads from the new column before it exists in production, you risk runtime exceptions. Syncing deployment order between database migrations and application rollouts prevents these failures.